Split metadata creation in bfsave.m into a standalone function

This should allow more flexibility in the definition of custom save function
where custom metadata can be passed as an input to bfsave
Fix bfsave to let tests pass
Add checkMinimalMetadata() method to TestBfsave
Add dimension order check to checkMinimalMetadata
Add additional metatada check
Add test for additional metadata storage using bfsave()
Move reader attribute definition and teardown to TestBfMatlab
Add documentation about bfsave metadata param/key value
Fix MATLAB function headers
Rename function as createMinimalOMEXMLMetadata.m
Merge pull request #1146 from sbesson/bfsave_advanced

bfsave: metadata improvements