Cleanup client properties implementation

Also add baseURL to initializer.

Cleanups:

- Factor out nationHost; baseURL is guaranteed.
- Stop checking launch args for baseURL format to
  get a custom baseURL.
- Remove unused and half-baked invalidation on
  nationName change.
Make custom client accessors KVO compliant

Leveraging the default setters instead of directly
setting on instance vars prevents obviates add
willChangeValueForKey: and didChangeValueForKey: