Prepare for integration into Perseus.

Sorry for this mess - it was the result of a few days of testing
various configurations over about 20 commits.  I finally decided to
just squash them all into this mess since it was too much work to
separate them out cleanly.

== Switch to RCSS. ==

This was the biggest change. We're trying this out experimentally to see
if we can avoid using css at all. There are some niceties still to be
built to make RCSS more convenient.

== Use a prepublish script. ==

We do this to transform and copy files to the
root. This way you don't have to install jstransform and such to use
this package and you can use require('react-components/foo') rather than
require('react-components/js/foo.jsx').

== Don't surround blocks with inlines. ==

We have this pattern of embedding `<p>`s in `<InfoTip>`, which was made
of `<span>`s. Switch to `<div>`s so we're not embedding block elements
in inline elements. I noticed this when I was trying to debug an
unrelated problem (two copies of react on the same page) and though the
browser was maybe moving the `<p>` outside the `<span>`s.

== Remove dependencies ==

I'm not entirely happy with this but I think it'll do for the moment.
For this section I'm thinking of react, underscore, moment, etc. Runtime
dependencies. React is a bit different than the others, as we know it'll
be required. Moment, for instance, is required if you use `TimeAgo` but
not any of the other components.

There are a few different types of dependencies in npm:

* `dependencies`: These are hard requirements. Npm will install two
  versions of a package to satisfy all `dependencies` if necessary. We
  definitely don't want this for any of the above packages.
* `peerDependencies`: This might be what we want for react. I tried this
  out for a bit and couldn't get it to work but might revisit in the
  future. Poorly documented. I can't figure out what it means after
  reading [the announcement](http://mbutterick.github.io/pollen/doc/)
  and the [first message in the
  issue](http://mbutterick.github.io/pollen/doc/). Might revisit in the
  future. This isn't the right thing for underscore and moment.
* `devDependencies`: Nope - we need these libraries at runtime.
* `optionalDependencies`: npm tries to download these but gives up if
  "it cannot be found or fails to install". Why you would want those
  semantics I do not know. It doesn't seem to be what we want for any
  dependencies.

I'm left with removing dependencies.

Test plan: (after corresponding changes in perseus)
* find widgets that use info-tip, tooltip; and button-group; make sure
  they don't throw any exceptions and (informally) match my expectations
  for how they should behave.

Auditors: jack