add metadata
fix binarySplit; clean up tests
allow mini batches