You can follow along the ideas from beginning to current (but still broken) state by adjusting the url with /1, /2, …, /7. For instance https://jsfiddle.net/AndyNovo/d6bau1af/1/ is my first step, fading between styles and setting up a basic OO framework.