Do not generate metadata by default, but require explicitly to be enabled

Metadata generation sometimes takes time, but if you are doing operations on DataFrames or ndarrays, it can be that when internally new DataFrames or ndarrays are made, metadata is generated again and again and there is not really a way to disable that because it is on by default.

In retrospect, I think it would be better if generation of metadata would be disabled (or at least disabled in the constructor, it could stay on in other methods), and then you could enable it when you finish all operations on data and then trigger metadata update (maybe also with some additional method, but you could also just do set_for_value).

Edit: Same should be done for check as well. It might be quick, but it can also be called many many times for all values. So by default that should also be disabled.

Edited by Mitar