Changed the way DeepPointer works

Also more cleaning up