Naming convensions and clean up
Refactored api