updated headers and documentation