changes and unit test
work on session binding.
cache found views.
allow dynamically binding data to views.
Merge branch '4.0'