Fix MSVC build

Note: The unit test was technically incorrect for all platforms but passes due to implicit casting
Add name of node 'pointed at' to debug

This is "Add name of node pointed at to debug #1677" by @rubenwardy updated to work with game.cpp after it was refactored.
Add Lua helper functions vector.apply(v) math.sign(x, tolerance)
Performance of main client loop up to 2x faster In places, up to 3 times faster

NOTE 1: This does not mean a 2x increase in framerate. Increase in fps may be up to 1-2fps
NOTE 2: This local 'caching' of settings is not optimal and an alternative solution will be worked on after 0.4.11 is released
Rewrite generate notification mechanism

Add support for notify-on-decoration
Clean up mapgen constructors
Clean up mapgen.cpp code style somewhat
Remove trailing whitespace from some files
Build for win32 & win64 on Travis too
Add workaround for failing clang build
Close settings files and save them correctly
Ignore some mouse events sent from scrollbar to GUITable

Fixes #1567, #1806.
Add minetest.clear_registered_biomes() api
Schematics: Fix minetest.place_schematic() when defined by a Lua table