Remove use of com.google.common.base.Preconditions

Fork necessary methods of Guava Preconditions
Remove use of com.google.common.base.Charsets
Remove use of com.google.common.primitives
Remove use of com.google.common.io.Files.map
Remove use of com.google.common.collect.ImmutableList
Remove use of com.google.common.io.InputSupplier and com.google.common.io.OutputSupplier
Remove use of com.google.common.base.Throwables
Remove use of com.google.common.io.ByteStreams

Fix over read bug in OutputStreamSliceOutput.writeBytes(InputStream in, int length)
Remove use of com.google.common.io.CountingInputStream and com.google.common.io.CountingOutputStream
Remove use of com.google.common.io.LittleEndianDataInputStream
Remove use of com.google.common.io.LittleEndianDataOutputStream
Remove Guava dependency
Make findbugs annotations dependency optional