Documentation and changing goals to a set.

* Lots of Javadoc
* Agents now have a Set of Goals instead of list, preventing duplicate
goals at an API level.
Documentation and Properties rework

* Improved documentation in GameServer
* The network port is now correctly retrieved from GameServerProperties
* GameServerProperties now extends java.util.Properties and merely
configures some defaults.
More AI work

* New Environment interface to map to proper AI definition of an agent
* Zone provides an implementation of an environment
* Proper description of an agent from actual docs, with thoughts on
future work.
* Fixed naming of a variable
* More documentation