I think what you can leverage is the fact that there are services that can first of all add/remove Things from a Network.
So you would have an Organization network that has all the sites and then you can dynamically assign the stations to the appropriate sites.
For the value binding, again you can use script to dynamically create local or remote bindings (remote if they come from the Edge Microserver)
Not sure if you are using the Edge Microserver or not, but if you are in 4.2 you can just update the channel or in 5.0 you can update the identifier to very seamlessly switch a Station to another site.
With networks, your Stations and Sites don't even have to maintain a property that says what they are associated with, since they can just ask the questions: What network am I in, who is my parent or who is my child.