[FIX] add DLLAPI to two functions

- these two explicit template initializations are only ever included in
  BaseModel.cpp and are thus part of the library. To be visible to the
  client, they need to be exported explicitly (they are used in
  CONCEPT/Factory.h)
[FIX] add DLLAPI to assignment operator

- since the assignment operator of ToolDescription is available through
  the API, it also needs to able to assign ToolExternalDetails which
  contains a MappingParam object.
[FIX] add DLLAPI to two functions
[BUILD] turn on -fvisibility=hidden for gcc
[BUILD] disable -Werror by default

- configure travis to use -Werror in gcc to check all incoming pull
  requests
- Werror does not seem to work on all configurations reliably (e.g.
  exclusion of system libraries) and changes from one compiler version
  to another make this not a safe option for an initial compile of
  OpenMS
[FIX] fix dereference of iterator

- vector iterator front() is not dereferencable if vector is empty
- thanks to @aiche for finding the error!
[FIX] fixed reading of empty spectra
[NOP] fixed indentation
[FIX] fixed access to non-existing elements during median computation
[FIX] fixed UniqueIdGenerator_test, derefenced end() iterator
Merge pull request #841 from OpenMS/feature/EnableWerror

[BUILD] disable -Werror by default
Merge pull request #5 from aiche/hroest-fix/fixCachedMzML

[FIX] fixed reading of empty spectra
Merge pull request #842 from hroest/fix/fixCachedMzML

[FIX] fix dereference of iterator
Merge pull request #843 from aiche/fix/win-debug-mode-fixes

[FIX] fixes tests failing win debug mode
Merge branch 'develop' into feature/visibilityHidden

Conflicts:
	cmake/compiler_flags.cmake
Merge pull request #833 from hroest/feature/visibilityHidden

Feature/visibility hidden
[FIX] as discussed in #822
[FIX] simplify code, as discussed in #822
[FIX] fix bug, as discussed in #822
[FIX] remove dead code, as discussed in #822