Fixes #36 Thanks to Steve Purcell for suggesting this patch
Emacs' built-in completion mechanism works well for partial completions.
Set `real-last-command' like in `execute-extended-command'. This allows command-frequency to pick up the command.
Use `push'. Explicitly pass the output variable `commands'.
ido-ubiquitous adds a defadvice that sets the default output of ido-completing-read to "". A workaround is to explicitly specify the default value in the parameters to ido-completing-read.
Simply passing a symbol to `mapcar' makes it call that symbol for each element in the list.
The recommended way to make a buffer read-only from elisp is to set `buffer-read-only' to non-nil. For making temporary edits to the buffer, setting `inhibit-read-only' to non-nil overrides the read-only status of the buffer.
Drop 'delete-if' to get rid of the 'cl dependency.