Added receiver data structure, which sits at the destination of a link and mirrors the router at the sending side. For now this object is intended for holding metadata on the link source and connections, information which is needed for sending remote instance release requests. In the future the receiver object could also help recover mapping state after a source crash, and may have an active role in processing datastreams and combining many-to-one connections.
Added receiver functions.
Merge branch 'master' into merge

Conflicts:
	src/admin.c
Finished basic integration of mapper_receiver data structure and functionality, including release of remotely-owned instances on scope removal or unlink. Also streamlined freeing of router structures.
Merge branch 'master' into receivers

Conflicts:
	src/types_internal.h
Properly release orphaned instances on unlink or disconnect; added scopes to receiver structure.
Added remote instance release request functionality: when an instance of an input signal is released locally (with a call to msig_release_instance), a release request message is sent to all upstream connected signal belonging to a link scoped for the instance. Output signals can optionally register an instance_management_handler (as before) but now a third argument specifies the type of events to call the handler for.
Properly register release request handlers; use lo_send_message_from() for sending /linked message since the receiver needs to know sender's IP and port.
Re-allow instance management callbacks for input signals, update testinstance.
Implementation of reverse-connections for transporting remote updates of connected input signals. This technique is meant to replace the previous query-response method for acquiring state of remote inputs used for supervised implicit mapping approaches. To make it clear that reverse connections are transporting destination (input signal) _state_ rather than inverting the mapping connection, reverse connections are accessed as a connection mode and thus cannot be used at the same time as e.g. linear scaling or expressions. Replaced testquery program with testreverse.
Swig/Python bindings for reverse-connections.
jni bindings for reverse-connections (untested).
Re-added query functionality while keeping reverse connections; re-added testquery.c; alphabetized test program names in makefile.
Restored query functionality in swig/python bindings.
Restored query functionality in java bindings.
Merge branch 'master' into receivers
Added property @sendAsInstance to connections. This allows over-riding default instance behaviour, e.g. choosing whether a single-instance signal should update all active instances at the destination or should be treated as a unique instance.
Allow positive exponential notation.
Check for functions exp() and exp2() in expression parser - these were being treated as malformed exponential notation since they start with an e.
Use uint32_t for incrementing network instance IDs since that is how they are sent.