Double close causes exception, which violates Closeable contract.

LZ4's block streams inherit Closeable. Closeable's contract specifies:
```java
    /**
     * Closes this stream and releases any system resources associated
     * with it. If the stream is already closed then invoking this
     * method has no effect.
     *
     * @throws IOException if an I/O error occurs
     */
    public void close() throws IOException;
```

Show that double-close is broken in a way that violates the contract.  Add a fix.