Added easy-to-uncomment std::function fallback
noexcept where applicable
const correctness
sink idiom