Better usage of generics in data() methods. Add removed static data method. Add tests for data methods