Removed macros. Moved type defintions to json.hrl. Also added so that edoc recognizes the type documentation.