Turn metal tank into a container.

Also changed volume to reflect holding capacity.
Store fuel on metal tank when removing from vehicle.

Fuel will be stored in a metal tank when it is removed from a vehicle.
Two things to note about this:
    * It will store as much as it can in the tank instead of figuring
      out how much it was holding before
    * The metal will be put on the players inventory so to be able to
      get a reference to it.

These two issues should be worked on in the future.
Use the actual fuel amount in the tank for the refill.

Removing tanks will now remember the amount amount of fuel in them now instead
of being completely filled.
Spawn metal tank on the ground after removal.
remove unnecessary looping

	modified:   mapbuffer.cpp
added creepy doll
Add JsonArray::skip_value for ignoring values when iterating.
Allow raw json data to be extracted from JsonObjects and JsonArrays.
Add empty() method to JsonArray to check if empty.
Tidy some comments.
Add methods to JsonObject to non-fatally set values by reference.
Change JsonDeserializer to take JsonIn, not always JsonObject.
Mark some info getter methods const.
Add constructor for empty JsonObject.

Conflicts:
	json.cpp
Add size() empty() and get_raw() methods to JsonObject.
Add read_into() methods to JsonArray.
Add empty virtual destructor to Json(De/S)erializer.
Add JsonObject::read_into templates for sets and vectors.
Return empty object from JsonObject::get_object if nothing found.
Tidy json.h a little.

Conflicts:
	json.h