New command parser