Any ref issue

This fixes the issues mentioned in #190.
What does it do:
* Change the tests so that the issue gets triggered at all (was not without ```required```)
* Move ```normalized_uri``` to be a util function that can be used anywhere (actually this would not be necessary anymore - should I revert this?)
* Unify the structure of keys used for schemas to be absolute URIs without a fragment hash at the end

A consequence of the changes is that the Fake UUIDs also get converted to paths but I think that is Ok. If we ever attempt to load such a fake UUID file URI this has to be a bug I assume. And, I think it is better if we have a uniform way to create and lookup keys. Technically ```http://foo.bar/some_schema#``` and ```http://foo.bar/some_schema``` have to be considered equal, but schema authors can use one or the other.
As a developer I prefer to be clear about how the keys look like and do not want to reason about whether there is a # or not or whether there should be one or not.