Modularizing Counterblockd functionality & plugin interface for third-party modules

MessageProcessor should also probably pass in cur_block_index and cur_block as well (or some combined data structure), to provide context on the containing block as well