Support for formatters and listeners

- Add default ColorIndentFormatter
- Add InstrumentsFormatter for raw instruments output
- Refactor exit status into a listener
- Support custom listeners and formatters
- Add require, format, and listeners options to exec