Rewritten data_pointer, now it's lighter and more logic

This commit BREAKS API and ABI