Biome API: Add shore top and shore filler nodes, underwater node, water top node.

Also add water top depth and shore height parameters. Remove water dust node (is replaced by water top node which doesn't fail under overhangs).
'Height shore' is the height above water level of the shore/beach top.
'Depth water top' is the depth of the chosen 'water top' node, usually used for icesheet.

Here are the biomes used for testing this:

minetest.clear_registered_biomes()

minetest.register_biome({
	name = "grassland",
	node_top = "default:dirt_with_grass",
	node_shore_top = "default:sand",
	depth_top = 1,
	node_filler = "default:dirt",
	node_shore_filler = "default:sand",
	depth_filler = 2,
	height_shore = 3,
	node_underwater = "default:sand",
	--node_stone = "",
	--node_water_top = "",
	--depth_water_top = ,
	--node_water = "",
	--node_dust = "",
	height_min = -32000,
	height_max = 32000,
	heat_point = 50,
	humidity_point = 50,
})

minetest.register_biome({
	name = "desert",
	node_top = "default:desert_sand",
	node_shore_top = "default:desert_sand",
	depth_top = 1,
	node_filler = "default:desert_sand",
	node_shore_filler = "default:sand",
	depth_filler = 1,
	height_shore = 3,
	node_underwater = "default:sand",
	node_stone = "default:desert_stone",
	--node_water_top = "",
	--depth_water_top = ,
	--node_water = "",
	--node_dust = "",
	height_min = -32000,
	height_max = 32000,
	heat_point = 90,
	humidity_point = 10,
})

minetest.register_biome({
	name = "rainforest",
	node_top = "default:dirt_with_grass",
	node_shore_top = "default:dirt_with_grass",
	depth_top = 1,
	node_filler = "default:dirt",
	node_shore_filler = "default:dirt",
	depth_filler = 3,
	height_shore = 3,
	node_underwater = "default:sand",
	--node_stone = "",
	--node_water_top = "",
	--depth_water_top = ,
	--node_water = "",
	--node_dust = "",
	height_min = -32000,
	height_max = 32000,
	heat_point = 70,
	humidity_point = 90,
})

minetest.register_biome({
	name = "tundra",
	node_top = "default:dirt_with_snow",
	node_shore_top = "default:sand",
	depth_top = 1,
	node_filler = "default:dirt",
	node_shore_filler = "default:sand",
	depth_filler = 2,
	height_shore = 3,
	node_underwater = "default:sand",
	--node_stone = "",
	node_water_top = "default:ice",
	depth_water_top = 4,
	--node_water = "",
	node_dust = "default:snow",
	height_min = -32000,
	height_max = 32000,
	heat_point = 10,
	humidity_point = 50,
})