Create profiles on remote pods

If the profile doesn't exist locally and we're not in a `pod` role, we pass the
request over to the pod that's supposed to deal with it (currently hardcoded to
pod `1`). Once that pod has returned successfully, we create our own local entry
with the `pod` column set to indicate the remote location.
Consolidate podService profile endpoints

Since these are doing exactly the same thing, let's just make `/profile` nice
and simply RESTful (modulus our autocreation). Now that we have better logic
around whether a profile exists yet, we may want to stop autocreation so bugs or
human errors don't lead to pods having empty data for profiles they're not
really supposed to own. If a pod doesn't have a profile, it should probably tell
you about it, because that means something is out of sync between the apihost
and the pod.

Now that we're passing profiles around more as objects, the endpoints should
return the whole thing, so `profileManager` will return the full profile data
whenever you either get or create. This won't affect any external code, because
it's all relying on only `auth` and `config`.