Improve help and refactor