Use Repository as abstraction layer for Blockchain
Merge pull request #74 from nicksavers/repofactor

Performance and better separation of concerns
Avoid double Map search
Recalculate trie only when necessary
Improve binToNibble performance
Improve performance matchingNibbleLength
Remove call to WorldManager in Block constructor
More concice logging program input
Remove quotes around string in property file
Change VM log to be more like pyethereum
Outline VM log
Small refactoring