lint checks
full support for streams, blobs, and file paths

Still no serialization, but should be mostly atomic, barring checks for
collisions for temporary files.