Use std::numeric_limits<float>::infinity() directly

Division by zero, that was used initially, results in compilation error
in VS2010
Silence MSVC security warning C4996 in system.hpp
Get rid of type convesion warnings inside VS2010
Merge pull request #15 from ddemidov/master

Fixes compilation errors and warnings for VS2010