open class KTerminal(val historyFile: Path? = null, val terminal: Terminal = Terminal(), val prompt: String = "$", val maxHistorySize: Int = 1024, val closeHandler: () -> Unit = {}, val commandHandler: (String) -> Unit = { log.trace { "command: $it" } })