Move the Service Locator from ReactiveUI into Splat

Just like it says, this copy-pastas the service location code from ReactiveUI into Splat, so that everybody can standardize on it and not write their own / pull in gigantic libraries like ReactiveUI or MvvmCross just to have a service locator.

/cc @slodge @lbugnion