[cleanup] fix some GCC 7 warnings
This fixes some warnings regarding deprecated throw(...) (see #71 (closed)) and an error due to a missing include for std::function when using the C++ Standard Library from GCC 7.
This fixes some warnings regarding deprecated throw(...) (see #71 (closed)) and an error due to a missing include for std::function when using the C++ Standard Library from GCC 7.