Show empty list, if the builder doesn't return any feed

Unfortunately, I forgot to remove this change before I
merged in pull request #5. I need this change to be
removed in order to explain a certain scenario in the
blog post.
Merge pull request #7 from pawanpoudel/bugs/show_empty_list_if_no_feed_is_built

Show empty list, if the builder doesn't return any feed
Data manager can sort feed with given key in given order
Create a class that manages caching of feeds
Feed builder now accepts JSON dictionary instead of array

Instead of creating a new feed from scratch, feed builder
now just fills in data for the specified feed object. One added
advantage of this approach is that the feed builder is not
dependent on FeedDataManager anymore.
Give feed manager an instance of feed cache

FeedManager now takes FeedCache instead of
FeedBuilder. The feed manager delegates the task
of creating Feed objects from JSON to the FeedCache
object.
Return cached feeds while fetching latest ones
Cache newly arrived feeds and notify delegate