Switched PreferencesView to Private

There is no reason for this to be public
Added Sprint 2 Requirements Document
Merge pull request #216 from BU-CS673/production

Production
Added initial SetControlsView class

SetControlsView will handle user customization of controls.  This class
is still in progress as of this check-in.

AltMenuScreen has no real changes, just a few cleaned up lines
Corrected Errors/Warnings in SetControlsView

Note, two warnings still present that need to be resolved, probably
needs restructuring
Merge branch 'production' into Ethan

Conflicts:
	bubolo/src/bubolo/ui/AltMenuScreen.java
	bubolo/src/bubolo/ui/ButtonPanel.java
	docs/Sprint2Requirements.pdf
Merge pull request #328 from BU-CS673/production

Production -> Canfield
Merge pull request #331 from BU-CS673/production

Production -> Canfield
Merge pull request #355 from BU-CS673/production

Production -> Canfield
Fixed multiple network issues; Tank cleanup
Removed Terrain.java.orig that had made it in at some point
Additional tank cleanup

This class needs needs work. It has too many long methods, and uses
javadoc comments within methods, which is confusing.
AITreeController to Network fixes; Timer sent on game start
AITreeController now works w/ network; Updated net integration tests to use start game timer

- AITreeController only creates a grass in the tile if necessary
- AITreeController sends new trees across the network, as well as the
new grass, if necessary
- NetServerTestApplication and NetClientTestApplication updated to use
the start game countdown value
Fixed NPEs in 2 net commands when testing w/ MockWorld
Updated net command tests; MockWorld now has more functionality
Added unit test; Added getControllerCount to world
Laying mine off-map no longer causes game to crash
Merge pull request #358 from BU-CS673/Canfield

Canfield -> Canfield-Staging
Fix Issue #238 by setting setVisible to false

Fix Issue #239 by changing button name from 'Cancel' to 'Close'