Block engine. It uses protocol buffers to create offline serialized
blocks stored in the hard drive.
Some additional small changes to other files