Added cmb_post_meta_box and CMB_Meta_Boxes abstraction beginnings...

This pull request aimes to provide a better API for adding meta boxes and also works towards abstracting cmb to support all meta data object types.

This means removing any post specific logic from `CMB_Meta_Box` into `CMB_Post_Meta_Boxes`, with `CMB_Meta_Box` having a type `post|term|etc...` to handle the `get_metadata` calls.

We should probably decide if `CMB_Field` should still be responsible for doing `add_post_meta` (or `add_metadata`) it's self, and if so, why not init the field with an object ID so it can also call `get_metadata` internally. Either geting / saving data should be handled all internally, or not at all - currently we have both.