WIP on figuring out the API