fix User#random_work to return a value always

User#random_work currently returns an empty array if completed is empty.
This causes the dashboard view to explode for users with no completed
exercises because asking:

if []

will return true, and continue on to call [].user.username and other
badness. An alternative fix would be to just call [].present? in the
view, but I think this is better in the long term rather than knowing
that random_work might return a single item or an empty collection.