Add more user-friendly checks for output file compression options

 * No longer assert fail if the level is outside the allowed range
 * Actually check that a valid compression method has been provided
 * Failing either check will result in NULL being returned by
   trace_open_file_out and the libtrace error being set appropriately
 * Added TRACE_OPTION_COMPRESSTYPE_LAST to compression method enum, so
   we can always easily tell if the value is outside the expected range.
Merge branch 'nicercompressionoptions' into develop
Setting the snaplen option will now work for ring:

This feature was missing in the current implementation of ring:

Thanks to Nevil Brownlee for bringing this to our attention.
Made timestamp integrity testing more thorough

We now test timestamp conversion across multiple formats.

Fixed timestamp difference check so that it would not allow
large negative values to count as successes.
Fix hard-coded call to gcc in GCC version check

FreeBSD 10 does not have gcc by default, but the clang compiler does support GCC
features. Replaced the hard-coded gcc command with $CC.
Tested on FreeBSD 10, Ubuntu 12.04.4 and Mac OSX 10.9.3
Allow a bit more leeway in the test-time unit test

Floating point division is not particularly precise on some
systems...
Merge branch 'fix_gcc_version_check' of https://github.com/alistairking/libtrace into develop
Fixed broken -fvisibility check in configure

 * Added a m4 script that does this properly rather than our hax
   gcc version check.
 * Tidied up CFLAGS in configure so we aren't adding the same sets of
   flags multiple times
 * Created a wandio_internal.h file for storing global variables that
   shouldn't be made public

Thanks to Alistair King, whose patch to try and make this work for
non-gcc systems brought my attention to just how broken this was :)
Forgot to update lzo to include new wandio header
Merge branch 'gccvisibility' into develop
Added m4 macros to check for gcc compiler attributes

Instead of relying on __GNUC__, we now individually check
whether each attribute is supported by the C compiler and set
preprocessor macros accordingly.

Removed similar attribute definitions from wandio.h, as these are
not used at all by libwandio.
Fixed missing AC_LANG_SOURCE from the new m4 macros.

More recent autoconfs are quite strict about this compared with
whatever is in Debian Squeeze.
Replace INCLUDES with AM_CPPFLAGS in Makefile.am's

Again, newer autotools versions complain about using these
outdated terms.
Add subdir-objects option to automake

Seems to be another thing that autotools likes to complain about.
Merge branch 'moregccattrs' into develop
Add test for port access functions

Tests whether trace_get_source_port and trace_get_destination_port
work correctly.
Fix build bug with UNUSED in libwandio
Added trace_get_fragment_offset to API

New function performs all the bit-shifting, masking,
multiplying and (in the case of IPv6) header skipping necessary to
work out the fragment offset for a packet, in bytes.

Fixed trace_get_source_port and trace_get_destination_port so
that they do not try to lookup port numbers if the packet is
not the first fragment.

IPv6 fragment offsets probably need more testing.
Add new test for fragment offset function

Update test suite to build and run new port and fragment tests.
Return 0 for port numbers for ICMPv6

This brings the behaviour in line with that for IPv4 ICMP.