Fix for color ls output on OSX, implicit cd support, case insensitive tab completion

I've been looking into replacing my current favorite shell (Oh My Zsh) with IPython, these fixes go a long way towards making that a reality.

Implicit cd and case insensitive tab are of course a user preference, so I have made them configurable and kept the default behavior. To enable use this in your config:

c.InteractiveShell.implicit_cd = True
c.Completer.case_insensitive = True