Add microdata markup to detail pages

This change adds microdata to the location detail page.

Microdata is a method to annotate information with semantic "hints". Search engine indexers use these hints to understand the content of pages and, in some cases, alter the display of items in search results.

Spec: http://schema.org/

This change also tweaks a lot of how updates and creations of items works, moving more of that logic to the Location model.