Remove unused  field.
Simplify Command.

There's no point having the word and args separate now, as the Command
is always accessed via the `to_vector()` method.
Some more module comments.
Derive traits needed to test Playlist.
Refactor the tokeniser.

It now uses an iterator over characters, avoiding a needless string
allocation, and works in-place on the word vector.

The tests have been cleaned up, too.