Dont use glob to tab autocomplete.

It would not propperlly be completed if the path had the characters
'[', ']', '?' or '*', as that would be interpreted as part of a regular
expression. Brackets are specially common on anime torrents.
O mighty Beast of Character Encoding, I beseech thee!

I don't really know what I'm doing, but it looks like there aren't any
exceptions anymore when completing non-ascii character filenames.

I guess making sure that the 'input' variable is always unicode, not str, did
the trick, so len(input) now counts unicode characters instead of ascii
characters (bytes).
Use isinstance(... , unicode) instead of is unicode.
Fix crash when tab completing non existing folder.

Whenever you tried to tab complete a folder that either did not exist
or you did not have access permissions, a exception was raised by
os.listdir and was not treated.