Some further tidies in wake of latest location leak

A few things following on from #229 , mainly in `LocationRegistry` API.  @neykov can you cast your eye over this please?
Dislike package scope, is it really needed or can we not be `protected` or even just `public`?