Redesign of class "Bundle"

Iterators to access the list of blocks has been added to the "Bundle"
class. Old methods to edit the block list using Block reference are
removed.

 * insert() no longer accept an offset. Instead an iterator should be
   used as reference of the block reference.
 * blockCount() has been renamed to size()
 * getBlock() has been renamed to find()
 * Use find<class>() to get the reference to the block directly
 * Use find(class::BLOCK_TYPE) to get an iterator of the block position
 * block types are now defined by an enum instead of a unsigned char
 * methods referencing to the block type use block_t now