changes toward having reusable Stateful sessions
Further changes toward reuseable stateful sessions
Even more changes for reuseable stateful sessions
Fixed error with initial insert
Added code to do a limited automatic retract of facts.
getObjects command did not retract as I hoped.
Added logging for retracting. 

Changed retract to use identifier since types having to be unique is too
restrictive. This implementation did the remove in the execution results
however, since that is only place the identifier you placed during
insert is visible. I don't like this as much as previous method which
performed the retract at beginning of next run since if you receive some
invalid fact that causes execution to fail, it will keep happening and
you will never remove it until you dispose of the session entirely. 

I next tried to create a custom ObjectFilter to filter on these
identifiers, but I was unable to since the execution context really
seems to be the only place these identifiers exist. There was no object
I could access them from in the working memory.

Next I created an interface to store my own identifier and now require
all data classes that want to be added as facts in a stateful session to
implement it. I set this identifier during insert command and used it in
conjunction with custom ObjectFilter to retract on next execution.
Previously wouldnt retract those inserted at runtime. Changed method to
remove all but updates to address.
Improved code. Supports poolless, which will just create new and dispose
after execution for each run. Added update option to stateful instead of
just disposing. Dispose interval now optional. Dispose and update not
mutually exclusive.
Fixed variable starting with caps due to careless replaceAll
Mostly just removed commented out code.
Missed one commented out code block to remove.
Merge pull request #12 from CUNhL/0.9.1

0.9.1