Changes on default public API and implementation of concrete ApiQuery class

Changelog:
* Changes on default public API (ApiQueryInterface)
* Creation of concrete implementation of ApiQueryInterface (ApiQuery) and tests