Provide learning objectives

Our goal is for students to learn to follow best practices, not merely
be familiar with rails. This forces us to emphasize the meta-work.

The four rules of simple design help a budding developer learn
judgement. JB Rainsbergers decomposition from 4 rules to 2 provides the
most concise explanation for these rules that I've found.

Github flow is the baseline for remote collaboration. If you're not
branching and submitting patches your going to have a hard time working
as a distributed team.

I've yet to find a good, concise explanation of feature and unit
testing. Maybe I'll write one.

Documentation is an underrated skill. It becomes even more important on
distributed teams. Getting students familiar with YARD and writing
documentation for their public methods gets them thinking about the
behavior of said methods. It will also help us debug their thinking.
Add learning objective for Rails' moving parts

This project should serve to familiarize yourself with how Rails expects
developers to use models, views, controllers, routers, tests and assets
more fully.
Merge pull request #1 from codeunion/add-learning-objectives

Provide learning objectives
Write initial feature list

We split the project into many releases, each with their own set of
features.

This encourages small, distinct branches and pull requests; which will
allow us to provide focused feedback.