Changed from 'commands' to 'get-commands'.
Added not-command? and another command? predicate.
Aded missing functions.
Added top-level commands.
Improved error condition handling.
Removed old comment.