Tidied Block and BlockState and implemented some missing methods.