Initial checkin of the code.
Accidentally versioned database.yml. Removing it now.
Cleaned up business logic around the sprint controller.
Reworked the project specific business logic.

Also fixed a few broken unit tests.
Users can reopen a closed backlog item in an active sprint. #4

Also the product owner can do the same.

Added a public method, reopen, to BacklogController. Added filters
to calling this to restrict it to only the backlog item owner or
the product owner, and only for backlog items that are marked as
completed.
The product owner can reassign a backlog item. #13

Took advantage of this task to also rework the business logic around
backlog items. All business logic has been moved to the BacklogItem
class.
Backlog items have an explicit states. #14

Migration adds a new column to the backlog_items table, called
state. The BacklogItem class has five new constants:

PENDING
ASSIGNED
COMPLETED
DROPPED
CANCELED
The product owner can cancel a backlog item. #8

When a sprint is active, a backlog item cannot be deleted. Instead,
it can only be canceled. This is to avoid losing any of the item's
history up to the point when it was canceled.

When a backlog item is canceled, it's remaining hours are set to
zero and it is marked as completed.
Updated error handling to go to a named URL rather than an explicit
controller and action.
A user can have his password emailed to him. #6

Signed-off-by: Benjamin LAN-SUN-LUK <benjamin.lan-sun-luk@supinfo.com>
Revert "A user can have his password emailed to him. #6"

This reverts commit 37da0ec60d7098a1aba69238526575320f979899.
A user can have his password emailed to him. #6
Merge branch 'devel-0.1'
Removed some trailing white spaces.
Ensures estimates must be greater than 0. BUG #16

If the user sets the remaining hours as 0 then they are told
to instead mark the task as Completed.

Added a unit test to validate this business rule.
Emails are sent when no activity is recorded. #10
Users can view a burndown chart for a sprint. #7

Added a mapping for burndown charts. URLs will be in the format:

/report/burndown/[id]

where id is the sprint's id.

The day argument is an optional parameter. If it is not included
then the current status of the sprint is reported.

This patch requires you to run a migration, and the gruff gem to be
installed.
Users are sent a verification email on registration. #17

It also includes a new controller which handles verifying the user
after they follow the link in the email.

You will need to run a migration with this patch.

To set the hostname for where the user goes to verify themselves, update
the config/environments/{development, test, production}.rb file and enter
the correct public hostname.

It introduces a new model object, UserVerification. When a user
registers an account, an instance is created. As long as that object
exists, the user cannot do anything with the system.
Product owners are sent a daily status email. #11

Now, the time of schedules are configurable.
No link to create a product on the project view page for the product owner. #21

Created a business method called Project::can_create_products? which checks to
see if the user is also the project owner. If so, then returns true. The link
on the project view page calls that method on the current project to determine
whether the link should be shown.