Eclipse project updates and socket closed fix

The eclipse updates are to add the Maven nature and add a few more files to .gitignore.

(Copying my commit message here...)

Updates to fix error with closed sockets.

The issue is that if the GMetric.announce method is used multiple times
then the underlying socket in the protocol will be closed on the second
(and subsequent) calls. The changes in this commit use the Closeable
interface to mark the GMetric and Protocol classes as resources that
should be closed. Eclipse and other IDEs should warn client code if
these resources are not being properly closed. This design allows usage
of the GMetric class as either one time usage or with multiple calls.