added features and documentation