Fix to issue 271 - Table names and identifiers are not quoted when querying, fix is to start escaping identifiers in query generator, as well as provide means to extend it for other providers. CR: AnPete
Added support for indexes in the model and throughout the stack.
Added ability to annotate keys using the model builder.
Updated the MetadataExtensions for model builder to work with the APIs that use names for entity types, properties.
Shut up and put your RelatedEnd in my Sidecar... (Initial support for navigation to FK fixup)

This is very early support for fixup of FKs following navigation property change. Only fixup of dependent to principal reference navigations is supported for now--no collection fixup or inverse property fixup. Specific changes:
- Refactor Sidecar to allow it to be used with IPropertyBase and hence navigations as well as normal properties
- Similar updates to StateEntry to allow navigation property values to be obtained in the same way as normal property values
- Update FK snapshot to also snapshot navigations--will rename in a different checkin
- Simple detection of reference changes using the snaphot or notifications triggering a call on the listener that then does simple fixup
That's not my name...again (Just renaming ForeignKeysSnapshot to RelationshipsSnapshot)
Time may change me... (Refactor change detection out of the StateEntry class)

The StateEntry class was accumulating logic used only for detecting changes. This checkin extracts this functionality into a separate service to reduce the amount of code an responsibilities in StateEntry and make change detection easier to test.
Change the default author in makefile.shade
Merge branch 'dev' into merge