Replace a use of strcpy with memcpy, fixing a crash due to inlining.

On Linux, a use of strcpy caused a crash for unknown reasons when
inlined by -O2, but memcpy does not crash in the same place.
swig bindings: Remove extra scope around temporary sigval.

In SWIG 2.x, (and maybe 1.3?) this extra level of scope causes the
sigval to be destroyed even though a pointer to it is retained and
used shortly after, causing a crash.
swig: Change naming of extended struct to comply with how SWIG 2.x handles structs.
Merge branch 'swig2'

Conflicts:
	src/table.c
Clarify monitor request function names, add functions for requesting only input or only output signals, or only incoming or only outgaing links or connections.
Update python bindings with monitor API changes.
Added monitor function for getting properties for a specific device.
Always add destination type and length to /connectTo message.
Refactoring callback names.
Free unused connection and link_signal memory.
Fixed bug freeing routers and receivers.
Fixed illegal memory access bug.
Rename mapper_db_remove_device() to mapper_db_remove_device_by_name() to match API.
Reduced memory leaks by approx 1KB according to Valgrind.
More memory leak fixes - Valgrind now reports 0 bytes lost when running test.c
Use real timetags for all messages; disable libmapper clock offset updates for now.
Fix monitor batch request bug resulting from protocol change in commit c7cf756.
Remove processing of obsolete n_connections property.
Fixed erroneous length for devdb_table and condb_table.
Added @libVersion to device properties, value is generated by autoconf and git.