Rewrote all the code... fun...

Seriously I rewrote it all...