This is going to result in `key = foo.bar` if `prefix = foo, key = bar` but `key = bar` if `prefix = nil`?  Neat