Allow using None as a default value for Dict traitlets

This was converting None to an empty dict, which caused the application to pass in a user_ns to the shell, which then behaves slightly differently, creating a DummyMod instance.

Ping @minrk : Is this the best way to fix this?