Separate sync/async command types and implement async server start