Defined some initial classes/interfaces as base framework for API