Fixes access into incomplete type (for some weird inclusion order)
Adds default overload for assign-moving LibraryEntry
Adds overload for Connection operator=(&&)
Adds comment to Boost CMake-vars
Extended the server to store the connections in a seperate class.

Succesful multiple client connections with pings and pongs being sent.
Moved server and port to the positional arguments
Removes -Wshadow from the warnings
Adds working search and index functionality
Removes lots of debug output
Switched from using Livemedia to GStreamer.

Also fixed a MXE build to create windows executables.
The process is harder to recreate than from source build with Linux
and we need to ship the ICU data dll with the program or find a way
to work with the .dat file which is the other solution.
Added Streaming support with Gstreamer.

It's not fully implementented but the basic funtionality has been tested
The sender pipeline now transcodes to 320kbs mp3 before sending

Also cleaned up the pipeline code and the CMakeLists. Moved all general
functions to related to gstreamer to libdmp-common:gstreamer_util.{hpp,cpp}
Mega commit. Lots of different changes. List below

- Added index functionality to the gui.
- Added gui that can query clients and show results.
- cleaned up destruction of clients, gui and server to not crash on destruction.
- Added trackno to dmp_library::entry.
- Added the origin to the SearchResponse message.
- Added a boost::fusion dependant outputter that can write a fusion object to an ostream.
- Added generic callbacks class.
Created a Custom QTableModel to view SearchResults.

Also removed the need for callbacks to reinitiate the listen for requests.
Added some function to access fusion members at runtime.
Created 2 interface for the client and ui to talk to each other

Also moved synchronized client shutdown to a shutdown method in stead of the destructor.
Fixes the parser to fail correctly on strings that didn't pass the first expectation point
Removed the virtical header in the search_result_view
Fixes a small mistake with a gstreamer util macro
Improved the ui-client interfaces condierably.

The flow now is much clearer as it was last commit. There is one
nasty hack concerning Qt Rawpointers and the delegate system. It
works and is memory safe at the moment, but if we want to do
somthing extra in the future it might not be anymore.
Made the DmpClient callbacks private without a getter.

This makes much more sense as these callbacks were created for
asynchronous io not for communication between gui and model.
Added a delegate virtual function to take the function of communcation
between receiving a ByeAck message and all willing to listen to this
message.