Remove all the files from the Sinatra version of the app.
Create a new Rails app.
Add rspec-rails and capybara for testing, and update some gem versions.
Run rails generate rspec:install to make a default spec/spec_helper.rb.
Change the README to Markdown and use the text from the Sinatra version of the app.
Add the sqlite3 gem to make the tests happy (without this you get in 'Please install the sqlite3 adapter').
Create the BikeController, with home and about actions, and map home to / and about to /about, and write tests ensuring they render at those URLs. Also remove default index.html.
Make the main page render the map.

Convert all the JS for the map into CoffeeScript, and put it into bike.js.coffee.
Copy the CSS into application.css.
Make BikeController#home call stopInfo() to read the list of stops.
Pull all the helper functions from the Sinatra helpers block into ApplicationHelper, and add stops.csv which ApplicationHelper#stopInfo reads.
Make home.html.erb output a JS array of the stops from @stops, plus the map div and so on.
Make the layout file application.html.erb include the web font and the Google Maps API.
Remove code that printed out the stops when getting them from the file.
Make tests pass by changing home page test selector to match what's expected.
Add viewport meta tag that I'd left out in the initial conversion.
Add the About page (and a test for it).
Add /bikedata XML endpoint.

/bikedata visits www.thehubway.com and returns the current XML feed of
bike stations. It returns application/xml so $.parseXML in the JS is no
longer needed. Add test that checks that the controller assigns to
@stations. Should also add a routing test for this mock the call to the
Hubway server.
Add images and fix up image URLs; bike stations now display live data.
Add BikeController#stopinfo which renders JSON (currently a dummy list of one string).
Implement /stopinfo, which gets data for train stations.

Add the /stopinfo method, which the JavaScript calls to get info about
a train station when the user clicks on it.

Include webmock and use it to test /bikedata and /stopinfo, with mock
HTTP requests that return hard-coded responses. Still need to parse the
XML returned by /bikedata to check its contents.

The Rails version now has all the functionality of the Sinatra version,
plus it's got tests!
Merge branch 'rails-conversion'

* rails-conversion:
  Implement /stopinfo, which gets data for train stations.
  Add BikeController#stopinfo which renders JSON (currently a dummy
  list of one string).
  Add images and fix up image URLs; bike stations now display live data.
  Add /bikedata XML endpoint.
  Add the About page (and a test for it).
  Add viewport meta tag that I'd left out in the initial conversion.
  Make tests pass by changing home page test selector to match what's
  expected.
  Remove code that printed out the stops when getting them from the file.
  Make the main page render the map.
  Create the BikeController, with home and about actions, and map home
  to / and about to /about, and write tests ensuring they render at those
  URLs. Also remove default index.html.
  Add the sqlite3 gem to make the tests happy (without this you get in
  'Please install the sqlite3 adapter').
  Change the README to Markdown and use the text from the Sinatra version
  of the app.
  Run rails generate rspec:install to make a default spec/spec_helper.rb.
  Add rspec-rails and capybara for testing, and update some gem versions.
  Create a new Rails app.
  Remove all the files from the Sinatra version of the app.