Support MS Visual Studio 2008 std::math idiosyncrasies

Visual Studio's std::math functions do not support integers. Prefixing
a constructor with a namespace is also a problem. Closes #632.
Merge pull request #633 from ariddell/feature/visual-studio-2008

Fixes #632. Support MS Visual Studio 2008 std::math idiosyncrasies