Merge pull request #33 from Cifram/master

First part of the new API
Merge pull request #34 from Cifram/master

Add 2D OpenSimplex noise.
Remove extraneous returns
Clean up perlin noise implementations
Impl std::rand::Rand for Seed
Rename util->math and make it private
Return T: Float from noise functions
Reduce scope of simplex gradient function
Merge pull request #35 from bjz/enhancements

Lots of cleanups, and return T: Float from noise functions