Avoid inheriting function objects from std::unary_function and std::binary_function.

Fixes #414
Merge pull request #416 from jaredhoberock/functional

Avoid inheriting function objects from std::unary_function and std::bina...