Splitting of commands on semicolon now done only in input_loop to avoid code duplication.
Resolving merge conflict