Change implementation of TryGetService based on DI behavior ChangeDetector

Or: Karl says, "You don't have to do it straight away, but just do it before it gets really bad."

Issue #900. Note that due to Dependency Injection Issue #127 the methods are still present in addition to new required service methods such that TargetInvocationException is unwrapped thereby removing this implementation detail from the call stack. This then simplifies the fix in #937.
Refactoring Northwind and OptimisticConcurrency functional tests
Split Northwind model into separate files and added a context class
Avoiding sharing any state between the contexts that mutate the model or the data
Renamed provider-specific test classes to include the provider name
Cleaning leftover databases
tests for issue 963 - disabled for now, until the big is fixed
Remove NotNull from overriding members
Fix #717 - Boolean expression bug

Added support for unary boolean expression translation to relational.