Tests and methods to record a refresh event
Wired in the new method
Removed the change origin "refresh"

It has it's own event type now
Merge pull request #65 from caiusb/new-refresh

New refresh recording
Moved the JSON constants to a new interface

There are needed on replayer side to unparse the JSON. So far,
they are hard wired, which is bad. With this, we can import these
constants and not need to import the whole ClientRecorder class
just for them.

These might be moved to a special "util" or "common" project if
there will ever be a need.
Removed unused import
Moved the EventType to it's own file
Renamed EventType to Events
Moved the change origin to their own interface
Shortened the name of the change origins
Merge pull request #66 from caiusb/json-constants

Moved the JSON constants to a new interface
Renamed a method
Method to take a snapshot of the projects touched by a developer

This spans the whole history.
Merge branch 'master' of github.com:ChangeOrientedProgrammingEnvironment/clientRecorder into versionedFiles
Merge pull request #67 from caiusb/snapshot-known-projects

Snapshot known projects
Merge branch 'master' of github.com:ChangeOrientedProgrammingEnvironment/clientRecorder into versionedFiles

Conflicts:
	edu.oregonstate.cope.eclipse.tests/src/edu/oregonstate/cope/eclipse/SnapshotManagerTest.java
Added method to COPEplugin to take a snapshotof everything.

Did not want to couple other parts of the code to the snapshot manager so I made this method to hide the SnapshotManager dependency.
Known projects are snapshoted when the plugin updates
Added test for versioned directories
Made parts of the Installer more testable:

It gets everything it needs in the constructor, so it can easily be instantiated again from the tests.
The plugin update methods gets its versions, so it can be called with arbitrary values from the tests.