Fixing the refresh bug

To resolve the problems with the refresh functionality I moved the core responsibility of Viewlet.call() to a new method: _call()

call() now only handles the rendering of context viewlets and let's _call() do the rest to allow refresh to use _call() instead to avoid unnecessary rendering while updating the cache.

fixes #23