Finishing up basic api, adding possible extensions