Automatically inferring associatedtype when conforming to a refinement

Associated type inference is intentionally limited to a single level for performance reasons. The associated type inference engine was notorious for how unstable and bogus it could be. Not because of quality of implementation – improving the performance of type inference is itself a very complex problem fundamentally.