Cleanup/3.x/core client impl

Package cleanup
Introduced interfaces