Fixes and improvements to palettes and LinearColorMapper

issues: fixes #1545
I think `LinearColorMapper(some_palette)` should still work. All the junk below can go, just need to check that there is `args[0]` and not `palette` kwarg.