Refactor

I'm gonna throw this into a pull request before the master head changes so it can easily be merged without messing anything up.

It's not 100% complete, but it is significantly cleaner now, most of it was cleaning execution paths, removing redundant code and unifying styles.

I plan on refactoring the Packets so that they're tad bit cleaner and don't rely on a god object.