Added CMake switch to disable floatingpoint support

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>
Added locking to functions accessing data structures

 - Locked global mutex whenever data structure contents are changed
 - Locked global mutex whenever shared lists or trees are accessed
 - Probably over excessive locking
 - Probably inneficient since some things could be done concurrently.
   Some datastructure local locks would be more efficient.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@tele2.at>