move code from functions to type and from function_test to type_test
remove obsolete code and reimplement the Object class
join _IterableMeta and _VectorMakerMeta metaclass and use it in _CallableMaker and_MatrixMaker