Fix CIDs 10587, 10813, 10911, 10912, 10402, 10403, 10577, 10578, 10579, 10848, 10861, 10865, 10868, 10910.
Move classes inheriting from device to a subdirectory.
Make sure only protobuf library installed by fairsoft is used.
Cleanup FairMQDevice and fix some initialization list warnings.
Loop to duplicate input files in Sampler.
Add some documentation to FairMQ.
clean-up of MbsAPI directory
Fix github issue70 with an undefined refernce in the MbsAPI library. During cleanup the file was removed by accident.
fix clang compiler error.

 found '<::' after a template name which forms the digraph '<:' (aka
  '[') and a ':', did you mean '< ::'?
 inline ::google::protobuf::RepeatedPtrField<::TestDetectorProto::Hit...
                                             ^~~
                                            < ::
- Add multipart support to the interface and enable its use out of tasks.

  Examples on the use out of tasks are provided in:
  `example/Tutorial3/digitization/TestDetectorDigiLoader.tpl:76-85`: sending a part.
  `example/Tutorial3/reconstruction/FairTestDetectorMQRecoTask.tpl:177-182`: receiving a part.

- This commit also makes structure within processorTask more consistent with samplerTask.

- add macro MQLOG to FairMQLogger.
New Tutorial6  added : initialisation with MQ Applications. Added new CMake Module for SQL DBs drivers
solve conflict with dev and make condiconal build of tutorial 6
- Proper process termination:

 if interrupted with CTRL+C blocking socket calls will return with -1. Each device should call FairMQDevice::Shutdown() before ending the running state to close open sockets, otherwise the interrupt call itself will block.

- FIX: Update number of received messages for FairMQFileSink.
- Add ability to poll on outputs for FairMQPoller.