Lighting reads blocktypes only for blocks under heightmap.

This is a preliminary "fix" for #822, but it needs verification first.

It should theoretically speed lighting up, since less data is copied back and forth.

Also implemented a possibly more cache-friendly blocklight starter algorithm (`PrepareBlockLight2()`), is disabled by default, needs perf testing.

I don't have the tools needed for cache performance testing. @worktycho could you run a comparison between this and the master, and then again between this and when you change `src/LightingThread.cpp:240` to `PrepareBlockLight2();`? Each should provide a performance boost, but I'm not sure how big and if the other effects cancel it out.