js/robot-simulator
skip all but first test in js/robot-simulator
add js/robot-simulator to curriculum
:tulip: Refactor lineno css to match new markup
:rooster: Clojure test cases for bob
Merge pull request #858 from rsslldnphy/clojure-bob-edge-cases

Extra Clojure test cases for bob
Merge pull request #857 from rsslldnphy/line-no-css

Refactor lineno css to match new markup
Improve the API of the BeerSong exercise
Merge pull request #855 from etrepum/etl-readme-852

Rewrite ETL readme and use consistent data types in tests
Elixir exercise bank account

This exercise involves accessing shared data from multiple threads. In Elixir
this requires understanding communication by messages and how to write a state
storage process.
Merge pull request #860 from pminten/bank-account-for-elixir

Elixir exercise bank account
Add ruby 'hamming' exercise

This is a re-do of the point-mutations exercise, which is deprecated.
There's currently no good method for deprecating exercises, so this
has been temporarily moved to the end of the curriculum list.
Rename bank acount example
Change context of text to user's page
Merge pull request #863 from Tonkpils/fix-context

Change context of text to user's page
haskell: additional test cases for phone number exercise
Merge pull request #864 from mjhoy/haskell-phone-number-cases

haskell: additional test cases for phone number exercise
Prefer recent exercises in random work

It's more likely that there are fewer people nitpicking on the recent
exercises.

This does not loop through multiple languages, so there's a chance that
you will end up with no suggestion. This will be fixed in a later
commit.

Also, this is a hack. There are no tests. This will also be fixed in
said later commit.
Randomize language in `random_work`.

Random work will now pull the most recent exercise for any of
the languages that you've completed exercises in.

Still a hack.
JS ETL spec typo.