Merge pull request #951 from rjmcdonald83/master

Start refactoring Work out of User
Merge pull request #952 from rjmcdonald83/master

Actually use Work
Remove metaprogramming from ruby meetup
Merge pull request #953 from pminten/meetup-rework

Remove metaprogramming from ruby meetup
Delete trailing whitespace in meetup example
Clarify intent of phonenumber test. Fixes #949
Normalize DNA exercise in Ruby
Merge pull request #955 from nikhiltaneja/master

Normalize DNA exercise in Ruby
Upgrade rouge
Rework Elixir meetup exercise

Don't require lots of duplication or metaprogramming
Typo in exercise README

That string definitely *doesn't* have those extra series
Remove metaprogramming from elixir space-age
Merge pull request #958 from Pavling/patch-2

Typo in exercise README
Merge pull request #956 from pminten/meetup-elixir-rework

Rework Elixir meetup exercise
Merge pull request #959 from pminten/space-age-elixir-rework

Remove metaprogramming from elixir space-age
Return a proper hash of files in the assignments.

This deprecates the old `tests` and `test_file` keys that get returned
from the API endpoint, but I'm leaving it in so that old command line
clients still work for people who don't care about scala or stub files.
Simplify Assignment#files

We can marshall into a map rather than a struct in the command line
client.
Include the README in the assignment files.

We may as well provide everything in one go.
Delete spurious bangs
Slugify team slugs