Fixup location handling, add test

Oh, I see here why it can't be Collections.emptyMap(). Carry on.