Fix typo in Metadata bug fix

Nybbles are 4 bits, so the byte has to be shifted by 4 in order to
return the upper nybble.
Added support for editing biomes

This is almost certainly not the correct way to do this but it works as
a proof of concept. Rather than hijacking HeightmapLayer it's probably
more correct to branch much higher up the class tree and add hooks to
call this during chunk generation.