Added cameoflage. Modified unit,tile getters.

Allunit getters now work for a unit of a different player, though the
getters in unit are limiting so that not any data can be retrieved about
a unit that is not itself. That is, a unit can get more data about
itself than any other unit can.

Waste production modified so that if the current tile is full of waste,
it will overflow to a neighboring one in a square pattern. Square
borrowed from seeing.

Cameoflage added. Now bushes and trees make it harder to see units,
though not the tiles themselves. Roads make it easier to see units,
though they do not increase the distance a unit can be seen from.
Instead they countermand a units cameoflage. (Unit cameoflage is
currently unimplemented). This involved changing metabool to store an
unsigned char, though the name of the class remained the same.

Changed getter for tiles. Previously they returned a data object called
pubtile. Now there is a getter for each separate value that ought to be
accessible. If the variable is not related to a unit, it can be
retrieved. It will return a pointer to the value, though this isn't a
pointer to the value in the map, but rather to an equivalent value
allocated on the heap. The pointer must be saved and deleted to prevent
a memory leak.