WIP: Remove js user_config module

Use the frontend config system more in its place. The `services/config` module has grown a ConfigWithDefaults class which matches up config loaded from the server with defaults in the JS code.

There's some ugliness still to sort out with the cell classes: they currently rely on merging cm_config dictionaries based on their inheritance, and I'm not sure how to make the config system interact with that. So, for now, CodeCell, RawCell and MarkdownCell (the three leaf classes we actually use) take a config kwarg that is a ConfigSection object, but Cell and TextCell (the parent classes) take a config kwarg that is a dictionary containing a `cm_config` key. I'd like to clean this up, once I've worked out how.
this broke the fact that the type of cell you add is the same as current cell type.