LDEV-1131: If the user is using a custom stylesheet, export portfolio wasn't copying the images directory for the stylesheet. Changed the export so it now copies the theme's special images (using the new image_directory column in the theme) as well as the default images.
LDEV-1125: Getting a blank screen for the next activity if you force complete a user on a parallel activity. The code to calculate the next url was there but the calculated url wasn't being returned to the Action class.
LDEV-988: Made the GroupingAction page handle both doing a grouping and going back to the screen later via the progress bar. To do this I had to make change performGrouping so it checks if the grouping has been done before trying to do it. Also changed the completeActivity to move the logic that closes the popup window to completeActivity rather than completeToolSession - now it is called for system tools like grouping as well as the normal tools.
Fixing the probem breaking out of a parallel activity within an optional activity. Rather than trying to fix it in the web layer, I've changed the progress engine so that as it processes up the hierarchy of complex activityes, it sets any completed complex activities to be the previous activity. Then the web layer works correctly.
Removed calls managing the learner in lesson cache - it isn't being used currently and the implementation didn't clear out users who closed their browsers without doing a proper exit.