This article has been fully updated for 2019! Click here to read.