jshintrc: disable newcap
Session: add constructor convenience
Session: use CachedObject
Session: use setData in default constructor path
Session: push down default id generation
Session: factor out setResults
Session: return result from addResult
Session: refactor instantiation