Fixes issue #146.

Fix is done by removing the updateAll() call when publishing, or unpublishing multiple comments. The problem was that updateAll() does not run any callbacks, so the built in counterCache does not get updated. Also added test cases.
Blocks: visibility_roles was not correctly honoured

This is a regression introduced in fa8ec5f216.

BlocksComponent retrieves the roleId of the current user from
CroogoComponent::$roleId.  Since Blocks and Menus component runs on
on higher priority, CroogoComponent::startup() has not been executed
yet, leaving the default value being used.

Add session checks in Blocks and Menus Components and set the value to fix it.

- To properly fix this problem, `CroogoComponent::roleId()` method will be
  introduced in 1.6
- The property `CroogoComponent::$roleId` is deprecated in 1.5.x

Reported-By: Mohammad Saleh
Closes: #423
Merge branch 'master' of github.com:dakota/croogo