added multithreaded simulation model
changed name of simulator class
added BlockTree class
added some graph drawing code + Unit tests
added some DOT generation code
added sample graph rendering
added mostConfidentChain code to BlockTree
added createBestBlock() + unit tests
extracted methods on SimpleClientThread
some modifications and concurrency fixes