Some big rewrites after pilight 3.0

- Rewrote socket library so we don't need to use the
normal and big buffer sizes. pilight can know handle
socket messages of any size. Please notice that this
commit will break all externally developed apps.
Please check the various language examples to
see how the new implementation works.

- Added memory allocation checks.

- A contact sensor hardware type has been added.
Fixed some dev comments
Fixed wrongly uploaded mumbi version
Exchanged libwebsockets for mongoose
Restored ssdp version and updated CMakeLists.txt
Added webserver php support through php-cgi
Fixed small bug in webserver
Added three channel weather protocol (thanks to @mel0en)
pilight can know automatically update the firmware of the upcoming filter
Remove NULL characters from buffer streams
Fixed some bugs in the webserver
After a big valgrind memory check, the following changes were made .

1) All memory leaks when running the main daemon are fixed.

2) Made all threaded functions platform independent.

3) Nearly all threads will now gracefully close instead of
being forced to. To allow this, some changes were made:
- The socket select function needed to be woken up so it
stopped blocking the execution of a thread. To allow
this, several loopback connection were made to send
a single bit to the socket connection when a specific library
is garbage collecting.
- All mutexes are unlocked and thread conditions are signaled
to continue execution.

4) Some thread helper functions have been added to the protocol
library. This makes protocol writing easier. It also
allows threads to gracefully stop like described in point 3.

5) A special garbage collector function was added to the protocol
library. When the protocols are freed the protocol specific "gc"
function is called first. This allows protocols to free their local
resources first. This function will only be called when it's
initialized.
Fixed compilation for FreeBSD and Ubuntu
Fixed the redirect webpage
This commits add the developmental version to the API config

New features of pilight can break existing apps and plugins.
By introducing the developmental version string in the
version array, apps developers can implement support for
each of these versions, or let users know a newer version
is not yet supported.
Tweaks for threechan protocol
Update threechan.c

Removed unneeded rxrpt settings
Merge pull request #75 from mel0en/development

Tweaks for threechan protocol
Bugfix for threechan protocol
Merge pull request #76 from mel0en/development

Bugfix for threechan protocol