Closes #8 - Made garbage collection iterator determine oldest active snapshot.  

Pull request for #8 

Created TimestampTracker to keep track of timestamps in Zookeeper.  Modified GC iterator to get oldest active timstamp from Zookeeper. Created integration tests for TimestampTracker and GCIterator
Thanks for bringing this up.  I meant to to ask you about this.  Transaction extends Snapshot so this will require close() to be called for Transactions.  I am not sure if we want users to have to call close() and commit().  I modified commit() in Transaction to call close() so users technically only have to call commit().  Another weird issue about using Closeable for Snapshot/Transaction is that resource leak warnings do not show in eclipse if a closeable object was instantiated by name (like in FluoFactory).  I am not sure why this happens.