Add links to resources

* Move Resource definition to its own file
* Create Link type
* Resources can now have multiple Links
* Add an AddLink() function
* Add a Self() function
* Add testing for AddLink() and Self()
Format the restish package
Renderer refactor, Hide Dispatcher, Resource cleanup

* Move Json Renderer to a renderer package
* Controllers are now added to restish, not Dispatchers
** Dispatchers are still used, just hidden behind the interface. No
longer need to get a NewDispatcher()
* Resource struct now contains pointers to Links and Resources
* Add function to convert a http request into a Resource
* Add function to convert a Resource into a map, ready to be turned
into the final response.