Encapsulate the concept of staleness into its own class

Extract it from a single helper method and wrap it in a method object.
This lets us add tests around it and then (later) split the domain
concerns from the view concerns.
Move the fakes so that they're namespaced by the test

Prevents errors since the names clash with names used in other tests.
Use the newly extracted method object for getting todo staleness
Refactor the calculation for staleness

Provide the number of days that the todo was stale instead of a class
name to use in the view.

We'll use the number of days stale in the helper to determine the class
name
Remove the fake preferences object

It's no longer needed since we're not using the preferences in this
object anymore.
Remove some of the time objects we no longer need
Move the view logic back into the helper

Staleness#days_stale only gives us the number of days that a Todo has
been stale. Add the logic for choosing the CSS class to use back to the
view helper.
Guard against the case days stale can be negative