Allow for special terrain generation in json

Fixes #5629.

This allows for toilets, gas pumps and vending machines generated in json to come with the relevant items (water, gasoline, drinks/food), using the following:

 "place_specials": [ { "type": "toilet", "x": 20, "y": 2, "amount": [1, 20] } ]

"type" - currently "toilet", "gaspump", "vendingmachine"
"x", "y" - x, y coordinates
"amount" - amount of liquid to be generated (for toilets and gas pumps) or boolean for vending machines.  
If amount is not stated, then the generation defaults to the usual (24 water for toilet, and rng(10000,50000) for gas pumps).