One time prepare & prepare in mass actions

* added $prepared attribute to indicate if prepare() was done
* if $prepared prepare() exits on begin

* processSessionData() and prepare() is always called (not only for actionAllKeys) in processMassActions() to enable accessing filtered grid data.
processSessionData fix

Fix according to "I think processSessionData must be call before page=0 and limit=0 to override these parameters when actionAllKeys is true"
Merge pull request #396 from darnel/patch-1

One time prepare & prepare in mass actions