User input and parsing fully implemented