Restarting Automata, Marcus Grammars and Context-Free Languages