TODO:
 - [x] Rewrite commands tests to ScalaTest
 - [x] Rewrite feature test to ScalaTest
 - [ ] Refactor existing API for consumers so that it's not quirky to construct and doesn't violate a lot of conditions
 - [ ] Introduce sync and async API for IDE
 - [x] Add unit tests for already existing commands/messages
 - [ ] Add unit tests for main building blocks
 - [x] Add feature test scenarios for existing functionality
 - [ ] Refactor commands into separate separate response/handler classes
 - [ ] Better handling of command parameter parsing
 - [ ] Better/systematic handling of xml construction
 - [ ] Proper configuration/parameter negotiation
 - [ ] Add missing argument/attribute handling for existing commands/responses
 - [ ] Add additional protocol elements
 - [x] Introduce separate API package (or move all internal to internal)
 - [ ] Add proper JavaDoc and examples
TODO:
 - [x] Rewrite commands tests to ScalaTest
 - [x] Rewrite feature test to ScalaTest
 - [x] Add unit tests for already existing commands/messages
 - [x] Add feature test scenarios for existing functionality
 - [x] Refactor commands into separate separate response/handler classes
 - [x] Introduce separate API package (or move all internal to internal)
 - [ ] Refactor existing API for consumers so that it's not quirky to construct and doesn't violate a lot of conditions
 - [ ] Introduce sync and async API for IDE
 - [ ] Add unit tests for main building blocks
 - [ ] Better handling of command parameter parsing
 - [ ] Better/systematic handling of xml construction
 - [ ] Proper configuration/parameter negotiation
 - [ ] Add missing argument/attribute handling for existing commands/responses
 - [ ] Add additional protocol elements
 - [ ] Add proper JavaDoc and examples
Put completed entries into order.
Put completed entries into order.
