Include protocol definition in the source tarball.

The test suite fails on some architectures without the spec file,
and some distributions require all source to be made available for
rebuilds.
Use culture insensitive format.
Allow for out of tree builds.

Sometimes it seems like the cpp generation is triggered when it
shouldn't be. The end result when building in out of tree builds is that
the build will fail since it can't find gen_cpp.py. This commit will fix
that.
Try compiling with C++11
Update code template for C++11.
Added test for codecs.
Fix issue with Bach polling.

Bach would only read as much data as fitted into one buffer page,
aborting the read too early.
Added test for encoding brackets.

Which unfortunately fail with the XML codec.
Properly escape html strings.

All html strings containing <>&'" should always be escaped, to allow for
these characters to be expressed in attributes and text nodes.
This incurs a slight overhead, as we now need to allocate new strings as
well as iterate over existing ones. This cannot be avoided though.
Added tests for escaping characters in codecs.

Bach doesn't correctly escape though, so I disabled that for now.
Properly implement test.

Bach isn't correctly escaping characters, so that's disabled for now.
However, "packed" and "xml" are important to test, since these are most
used.
"packed" is used for all network traffic, and "xml" is used for
persistence on the server and client. "bach" however isn't actually used
currently as far as I know.
Bump version.
Correctly check headers.
Harmonize autogen.sh within project.

This version should work on all supported platforms, opting to using
autoreconf if available.
Use a more proper name.

Variables with the format of *_SOURCES are intended to be matched
against programs or objects.
Ignore installed m4 files.
Updated meta data about the project.
Prepare for generation of ChangeLog.
Generate ChangeLog at dist time from Git history.
Removed obsolete files.