- Added a queue of `Listener`(s) and a corresponding lock
- Added a queue of `Connection`(s) and a corresponding lock
- Initialize all queue locks in the constructor
- Added `addListener(Listener)` for adding a new listener; will throw an exception if already added
- `Server` now implements `ConnectionConsumer` and implements an `addConnection(Connection)` method which consumes the provided `Connection` and adds it to the connection queue
- Added new module `errors`
- Added new type `ErrorType` with enum member `LISTENER_ALREADY_ADDED`
Exceptions (package)
- Publically import `errors` (only `ErrorType`) and `RenaissanceException` from `types`
Types
- Added `RenaissanceException` type as the base exception class for the server code
- Added new type which represents any class that can "consume" (or add) a new `Connection` object
Listener
- Updated to now use the `ConnectionConsumer` interface type rather than `Server` directly
Listener (package)
- The package now imports (publically) `consumer` and `listener` modules
- Addex exported single logo as `branding/logo_single.png`
Documentation
- Added a README with the logo, title and tagline
App
- Restructured into a module name `renaissance`