added sorting
added history support
added caching
added details view