Fix in libprox.
Merge remote branch 'origin/master' into twitter
Add support for dynamic selection of per-node query processor data.

Update libprox to a new version that allows the type of per-node RTree
data to be extensible and specified through template
parameters. Adjust the QueryHandlerFactory to take an additional
parameter to select the type of per-node data, making this a dynamic
selection. Also update all allocations of query processors to work
through the factory, necessitating the addition of a version for
manual query handlers. Update all calls to the factory, adding options
to control the type of data used; default to maxsize, as the
compile-time settings already did.
Make QueryHandlerFactories extensible.

Move QueryHandlerFactory into libpintoloc, which is now a more
appropriate location. Change the implementation of the factories to
allow registration, provide defaults, and work through classes for
each type of query handler and templated on the
SimulationTraits. These classes aren't singletons because getting them
to work across multiple libraries and binaries with different export
constraints (e.g. ServerProxSimulationTraits is only used in the pinto
binary whereas ObjectProxSimulationTraits is used from multiple
libraries) is seemingly impossible. Instead, for each SimulationTraits
type, one singleton object is maintained. For
ObjectProxSimulationTraits it is maintained and exported by
libpintoloc, for ServerProxSimulationTraits it is maintained by the
pinto binary.
Merge remote branch 'origin/master' into twitter
Fix accidental removal of space-mesh plugin.

When adding the Twitter plugin, the space-mesh plugin was replaced
instead of copied and modified to work for space-twitter.
Fix add/removeListener in JSPresenceStruct.

Unlike JSVisibleStruct, JSPresenceStruct can sometimes be created
without a VisibleData to work with. Fix the add/removeListener calls
to handle this case.
Fix JSProxyVisibleData removeListener calls.

In the case of disable(), we need to make sure we have a valid proxy
before calling removeListener on it.
Add generic extra query_data for objects to be used in query processing.

* Update libprox and sirikata-protocol to versions which support this
  generic data.
* Update the internal migration protocol and migration code in the
  server to pass this data.
* Convert a lot of naming from zernike -> query_data to indicate the
  more generic version, even though in most places they are just
  strings so only the name has changed.
* Update session code and location services to accept, store, and make
  accessible this query data.
* Update prox and location updates to include query_data in their
  results when it makes sense, i.e. if the results may be passed to
  another query processor (server -> server results, server -> oh
  results).
Make extra query data loading in HostedObject generic.

Refactor the code for loading extra query data (e.g. Zernike
descriptors) so it is handled by a generic interface and the existing
code is moved into a plugin. The choice of what data/how to load it is
handled by an option, oh.query-data, and defaults to nothing.