Don't dispose of script session if it is persistent
Better handling of null/empty result
Script sessions are now tied to HTTP session ID in order to avoid accidental sharing of script sessions between users

* also implemented a script session sliding timeout to avoid sessions being cached indefinitely