Fix asset reloading in development mode

The renderer was using a memoized class variable to cache the
concatinated react.js and components.js for server-side rendering. This
meant that when you updated a component, the server-rendered version would
not be refreshed.

Since #setup! is called every time a watched file is updated, it seems
like the natural place to reset the memozied string.
Kludge to fix Tubrolinks intermittent test errors

Sometimes Turbolinks hasn't fully loaded before Capybara attempts to
call 'Turbolinks.visit'. Adding a brief sleep gives Turbolinks a chance
to become availabe to PhantomJS
Fixes a gnarly test bug with server side rendering

Background: Running tests multiple times in a row could result in
errors, and could result in complete passing. In other words, the order
the tests ran in determined whether or not the tests would pass.

Ruby Test::Unit uses a psuedorandom seed to randomize the
order that tests are run in; you can specify a certain seed with
TESTOPS="--seed=xyz", which fixes the seed and thus the order the tests
will be run in.

The main source of the bug was that many of the tests rely on replacing
asset files and asserting that the results are as expected; however, the
asset pipeline uses mtime to determine when files have been changed.

*mtime's resolution is only 1 second, meaning that when a series of
actions took less than a second to run, the mtime wouldn't actually
change, and Rails asset pipeline wouldn't update the file list.*

This commit adds a hook to force reset the internal concatinated
react.js and components.js string. Another test requires a few calls to
sleep(1), because it is specifically testing that the asset pipeline
picks up changes to the file on disk correctly and renders them server
side.
Can't reliably reproduce this bug

Since I can't reliably reproduce the ```Turbolinks Not Found``` error,
this code is basically just hopeful thinking.
Revert "Can't reliably reproduce this bug"

This reverts commit 55d2a1d6aaffeb5f796989382a6ec7e825737436.
Heisenbug: http://en.wikipedia.org/wiki/Heisenbug

Really just trying to work around an incredibly annoying bug that only
seems to crop up once in a while.
Create a installation generator

[Heavily based on the ember.js bootstrap generator]

Running rails generate react:install will append the basic require directives
to application.js

Possible avenues for upgrades:

  - allow for files with arbitrary names ("mycomponents.js" instead of
    "application.js")

  - allow for files with different extensions ("application.js.coffee"
    instead of "application.js")