refactored some action compositions, added some documentation and general refactoring