New Release of API. Open for review for the next 48 hours

@primehunter326 @milus16  @popwarfour @JoshuaDickerson @the-hobbes @smacewan101 

Phelan and I have reworked the API to incorporate the list of features listed in #88 

If you see something that needs editing or it doesn't work too well for some reason let me know. The changes to the api are not deployed yet so to test it's features follow these instructions:

```
git fetch origin feature/api_2
git checkout develop
git checkout -b testing
git merge FETCH_HEAD
.... do your testing here do NOT merge the testing branch back into develop
git checkout develop
git branch -D testing
```

A list of changes can be seen in source code by reviewing the pull request. Or for a more itemized report see issue #88 and you can see each commit that updated the API

I will close this pull request and merge and release the API if no one has any objections by Monday at 7:30 EST pm. (That's 2:30 Phelan time I believe)

List of changes:
-  Pin creation: messages must not be empty or a 422 will be returned
-  The null value for a comment with no pin associated with it changed from "" to "0"
-  Types of comments and pins updated. See commit 1f4d47de
-  Reverse chronological ordering for comments returned
-  Heatmap offsets accepts floats (used to only accept integers)
-  POST supported for heatmap updates, follows the same procedures as PUT (This is only in place until iOS networking libraries have been updated)
- Heatmap data is normalized between 0 and 1 instead of being a raw seconds worked
- Heatmap data can be asked for in raw form by specifying raw=true in parameters to get
- Strategy for mem-cache updated for more consistent data
- Queries performed, both write and reads within API following strong consistency patterns
- Updated list of all errors that may be returned by the API for each endpoint listed in an appendix within the specification. 
- Extensive testing harness through spider program
- Heatmap data can be asked for in raw form by specifying raw=true in parameters to get
- Strategy for mem-cache updated for more consistent data
- Queries performed, both write and reads within API following strong consistency patterns
- Updated list of all errors that may be returned by the API for each endpoint listed in an appendix within the specification. 
- Extensive testing harness through spider program