add support for attributes; document everything in README.md