Removed the idempotent SQL generation.
Moved SQL Server specific SQL generation out of the base MigrationOperationSqlGenerator
Renamed ModelDiffer DiffSource and DiffTarget to CreateSchema and DropSchema
Added code to handle transitive renames in ModelDiffer
Updated and added tests.
Performed some cleanup (simplified expressions, , removed unnecessary NotNull annotations - as suggested by Resharper)
Pickled onion munchies... (Additional functional test coverage for fixup)

This change expands the Monster Model so that it:
- Is defined in terms of interfaces with concrete implementations for:
  - Full notification entities (PropertyChanging and PropertyChanged implemented)
  - Entities that only notify for PropertyChanged
  - Normal entities that don't do notifications
- Has additional tests for fixup when FKs change

I did some work to enable the tests for SQLite, but this is currently disabled since Database.EnsureCreated is not working yet.
All your principal belong to me... (Additional fixup testing and support for reference stealing)

Additional unit tests for fixup code that runs when FKs are changed. Also added support for nulling the old dependent FKs and navigation from the old dependent to the principal for one to one relationships when the FK of another entity is set to point to the principal.
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
Adding a generic topological sort for the update pipeline.