Refactored state, state object and vm

* The State and StateObject have been moved to their own package
* The VM is moved to it's own package
Minor improvements and fixes to the new vm structure
Added big int to uint switch
div 0 err
Refactored to new state and vm
Add Tx
Changed catching up code & peer handler

* Peers should be added no matter what
* Catch up with _anyone_
Added recoverable option
Removed old code
Peer reconnect attempt
Networking code
Merge branch 'feature/refactor_vm' into develop