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
I changed the code to follow the concept below.

interface SnapshotBase //has all methods for reading data (not sure about name)
interface Snapshot implements Closeable, SnapshotBase //this is what FluoClient returns
interface Transaction extends SnapshotBase

I created #175 for addition of newTransaction() to FluoClient