Implement an FBM for simplex noise + code cleanups.

Signed-off-by: Jérôme Benoit <jerome.benoit@grenouille.com>