Fix bug in Blockchain and update logging

- Remove ```StaticMessages.GENESIS_HASH``` so Genesis is no longer created and applied to the state if the Blockchain is not empty.
- Replace e.printStackTrace() with logger.error() and update log4j.properties accordingly
- Set most of the logging to ERROR by default so almost only exceptions will be shown.
- Use JUnit ```@Test(expected=RuntimeException.class)``` style in VMTest instead of ```catch(...) { }```


**Note:** There is still weird code in ```Blockchain.java``` where the ```index.isEmpty()``` will never be true, unless you _don't_ call ```Blockchain.load()``` - But you can't call that function in the constructor because of a circular dependency on ```WorldManager.java```. Working for a solution for that. 
See: https://github.com/nicksavers/ethereumj/compare/ethereum:master...master#diff-06ce642de11b675d567d2ea22cbcdc1dR100
Simply awesome , I didn't know about this 
notion to describe test case for exception