Store Managed Adapters & Serializers

Pull request to make a store instance responsible for it's own adapter and serializer instances - as suggested fix to #2588 by @tomdale.

Serializers and Adapters are no longer singletons.

Failing test included.
My bad, I was missing the [default '-rest'](https://github.com/emberjs/data/pull/2617#discussion-diff-22123649R209) one. But I agree, this looks good to remove it to make the situation more clear, and so we can remove the call to `this.lookupAdapter('application')`.