chatClient DataObject

this object sets up the text commands that are sent in and out of the
server in a format similar to SQL where certain key words are used to
identify what command is being made and forces a certain grammar to be
used.  (the player and unit classes are temporary classes)
clientDataForm
moved model stuff to model directory
tweak documentation
various changes, merge in master branch
commiting so I can switch branches real quick
not sure
yay it actually compiles and runs again
moved model stuff to model directory
tweak documentation
Merge branch 'hudmap' of https://github.com/cjeffery/sworsorc into hudmap
various small changes
???
hexAt return string
updated Army Results table functionality
Merge branch 'master' of https://github.com/cjeffery/sworsorc
added new classes
Server and client organization changes.

Server makes a new ClientObject for each connection. ClientObject "owns" the socket,
and creates it's own threads for socket IO.

Added reader thread to Client code, so it can receive and report messages from the server, while
the other thread is waiting for console input.

Added server "echo" flag, which echos sent messages back to the sending clients.

Added a stub "handle exchange", where the first message sent by the client and the first
message received by the server is taken to be the client's handle. This will
have to change later.

Added sendToAllClients() function. Server sends message from one client to all clients via
their ClientObject representations, prepended with the sending client's handle.

Changed JFrame to JDialog (same thing, but JDialog can wait for input without looping)

This commit breaks the nice disconnection handling we had. Sorry! Now weird things happen
when someone disconnects. I'm trying to restore the old behavior, but I thought I should get
this out now.
Added static send() and receive() array functions.

Used send/receive array to send and display a list of current connections
to a client at log-in

added "user connected" and "user disconnected" system-wide announcements

(in client and server) added some checks for broken sockets,
(read() will return null, does not throw exception), so disconnects
are back to being handled okay again.
Created MessageUtils class to begin handling message
packing/passing/unpacking in a somewhat regular way.

Refactored client/server threads to start passing and receiving
messages with the "need-to-know-basis" pack/unpack message routines.
Client code can now receives different types of messages with the
same call, and figures out how to handle each after receiving based
on a tag.

Created test protocols to pack, send, handle:
->normal chat messages -> "bill: hi"
->disconnection announcements -> "User bill has disconnected"
->new connection announcements -> "User bill has joined."

Handshake procedure (sending handle and receiving current connections
list) is still done the old way for now.

For now, message passing is built on array transfer, but by using the
pack/unpack routines we're fairly insulated.