Remove serialize/restore, since they are dead code.
Remove dead code.
Merge pull request #55 from ahmedcharles/dead

Dead code removal.
Rearrange includes to improve compile times.

This also allows for memory leak checking on MSVC by having include
surrounding Qt headers, which break if you have a macro define new
to be something which tracks line information.