Tasks with basic-return-no-results Task query API

This PR adds some of the task-related models as well as an `/api/users/tasks` endpoint.  This endpoint actually does call code to query retrieve Tasks and render them to JSON, but so far I've only tested the case where no Tasks are expected to be returned.  

I know that there are some chunks of commented code in this PR as well as a fair number of "pending" specs.  I want to leave the commented code in until I write the tests and can verify that I don't actually need that code any longer.  

@Dantemss to do the review -- once merged, @philschatz should be able to use the API to display no tasks (tho @philschatz should note that the results returned from `/api/users/tasks` are more complex than just a simple array -- I'll send the docs; also I just realized that `users` is plural here (not `/api/user/tasks` -- if we want this form @Dantemss can remind me how to do that).
An alternative could be directly specifying an interval for checking if the cache is valid? Say, cache_hours or cache_days (I'll call them cache_time in this comment). And then check and/or cache the resource again if Time.now > updated_at + cache_time*(whatever_multiplier_you_chose). A permalink could have a nil or negative cache_time.