Fixed: Brokenness due to invalid Uri instantiation

Seemingly when Uri's constructors were last refactored their logic
was not clearly understood, resulting in a variety of brokenness...
Merge branch 'master' into mapdata-c++