Display better error message on unknown command, and return code 1

I play with cliffdemo and use bad command, i receive this traceback and message

```
$ cliffdemo hel
Traceback (most recent call last):
  File "/home/alncchau/.virtualenvs/realeasy/bin/cliffdemo", line 8, in <module>
    load_entry_point('cliffdemo==0.1', 'console_scripts', 'cliffdemo')()
  File "/home/alncchau/.virtualenvs/realeasy/lib/python2.6/site-packages/cliffdemo-0.1-py2.6.egg/cliffdemo/main.py", line 33, in main
    return myapp.run(argv)
  File "/home/alncchau/.virtualenvs/realeasy/lib/python2.6/site-packages/cliff-1.4.3-py2.6.egg/cliff/app.py", line 215, in run
    result = self.run_subcommand(remainder)
  File "/home/alncchau/.virtualenvs/realeasy/lib/python2.6/site-packages/cliff-1.4.3-py2.6.egg/cliff/app.py", line 260, in run_subcommand
    subcommand = self.command_manager.find_command(argv)
  File "/home/alncchau/.virtualenvs/realeasy/lib/python2.6/site-packages/cliff-1.4.3-py2.6.egg/cliff/commandmanager.py", line 71, in find_command
    (argv,))
ValueError: Unknown command ['hel']
```
I see this traceback, i prefer to catch this exception properly and display *Unknown command ['hel']*

```
$ cliffdemo hel
Unknown command ['hel']
$ echo $?
1
```
Regards,