"Fix" datastore and add more providers

The "fixing" is just to allow it to keep track of multiple events
from the same provider for the same job. It still needs to be
persisted.

Break out interface so it could be used with RunListener (for
detecting manually triggered jobs)
Set 1.7 compiler
Ignore jenkins hpi:run temp directory