indexer: Fix incorrect refcount decrement for snapshots

The snapshot.Close() should always decrement the refcount
But the real snapshot handle dealloc should be performed only when
refcount becomes zero.

Change-Id: Iad4a50311239fac72851943231021bd024e4be1f
Reviewed-on: http://review.couchbase.org/44021
Reviewed-by: Deepkaran Salooja <deepkaran.couchbase@gmail.com>
Reviewed-by: Sarath Lakshman <sarath@couchbase.com>
Tested-by: Sarath Lakshman <sarath@couchbase.com>