Added Blockhalving

cleaned up some code (didnt manage all until deadline, sry)