The following PR fixes interop issues between Kotlin and Java.
Currently, there is no way to go from `Command.Builder` -> `MutableCommandBuilder`, nor from `MutableCommandBuilder` -> `Command.Builder`.
This PR fixes it by introducing
- A new constructor for `MutableCommandBuilder`:
```kotlin
public constructor(commandBuilder: Command.Builder<C>, commandManager: CommandManager<C>)
```
- Making the `commandBuilder` variable public
- Adding the following extensions
```kotlin
public fun <C : Any> Command.Builder<C>.toMutable(commandManager: CommandManager<C>): MutableCommandBuilder<C>
public fun <C : Any> Command.Builder<C>.mutate(commandManager: CommandManager<C>, lambda: MutableCommandBuilder<C>.() -> Unit): MutableCommandBuilder<C>
```