move lodash methods to util

this is done in order to make a list of all lodash methods used in the
app for possible replacement or making a custom build of lodash.
fix bug with data caching

there was a bug in router causing data cached in index to be
unaccessible by children. the bug was in event listener of router.
refactor index::cacheData for better performance

remove `cloneDeep` method as unnecessary because react setState merges
current state with new data instead of replasing it