Allow styles to be pickled.
Fixes to styles.

* Only set the style name if it's not already set. This is for
  compatibility with the way the old style code did it.

* Do not auto-create styles beginning with _. This prevents us
  from accidentally creating a style that inherits from a
  non-underscore style.