feature(json_api): Added JSON API 

Closes #23