Added peak() and available() using a single byte buffer. Added flush().
Open now returns a file object (which has a close() method); exists() no longer accepts a parent directory.