#13 - Initial structuring and refactoring for v2 API
#13 - next round new classes creation and its structure. Solving compile errors but now not focusing wokring part.