Enable repository backup and restore

This capability has integration tests for the following configs:
- modeshape filesystem store
- modeshape infinispan store, filesystem
- modeshape infinispan store, leveldb
Initial implementation of PEP

Resolves https://www.pivotaltracker.com/story/show/55891634

- Prevented Session.save() when RepositoryExceptions are thrown (was in finally block)
- Made all REST API sessions, with or without client login, use ServletCredentials to obtain a ModeShape session
** This is so that we can use the same PEP injection for anonymous clients as we do for logged in users.
- Created a bypass servlet authentication provider, for REST testing w/o auth
- Made all REST calls use servlet credentials
- Added fcrepo-auth-commons to fcrepo4
- Renamed SessionFactory.getSession() methods w/o credentials to getInternalSession(), such that use is clear to devs
- Tied the transaction ID to the servlet session, to prevent duplicate login (now that use consistently use servlet credentials at REST endpoints)
Minor updates to Backup/Restore
Fix FedoraRepositoryBackupTest.java - Get the canonical path of the tmp directory to better mimic what happens in the class being tested.
Non-functional update: Refactor Storage Policy names
Ensure auth-provider singleton is correct in ITs
Add awoods to top-level pom.xml
Update README.md

Added detailed instruction for the format source code save action in Eclipse.
Add Maven artifactId and packaging type to fcrepo-transform
Minor update to clarify function names in LDPathTransform.
Fix checkstyle error.
Resolve https://www.pivotaltracker.com/story/show/57589414

- Fix File.getCanonicalPath()/File.getAbsolutePath() mismatch
- Disable FedoraBackupFSIT due to MacOS-X error
Resolves https://www.pivotaltracker.com/story/show/58003404

This compensates for Grizzly's missing http auth via a servlet filter.
The test filter proxies the request, adding methods needed for authN, simulating container auth.
All BASIC login attempts will pass with test filter configured
The fedoraAdmin container role is assigned to any user named "fedoraAdmin"
New filter is configured in web.xml for http-api and auth-commons.
OAuth project has a similar filter that was tweaked to support more auth methods in a basic way.
OAuth project now configured to use the bypass security authentication provider for ITs

Fedora PEP interface for filtering searches was refactored around iterators instead of sets.

JAX-RS security contexts were stripped out of the ModeShape login chain, keeping login
at the container level. This also means that login can be based on Modeshape's standard
ServletCredentials object.

Renamed a constant representing the fedora user role, resulting in some one-line changes in other places
Resolves https://www.pivotaltracker.com/story/show/57759720

Update DefaultFilter to propagate events on Fedora Objects/Datastream and properties attached to them,
Update SimpleObserver to suppress duplicate events
Make mvn less chatty... again
Fix fcrepo-http-api integration tests for Mac builds

Build issue resolved by using UUIDs instead of fixed names for test resources.
Fixed fcrepo-generator-dc integration tests for Mac builds by using UUIDs instead of fixed names for test resources.
Minor code cleanup, reducing compiler warnings.
Updated version of Marmotta LDPath dependencies
Add build-number to index.html

Resolves https://www.pivotaltracker.com/story/show/58585598
Update format of build info on index.html

Follow-on to https://www.pivotaltracker.com/story/show/58585598
[maven-release-plugin] prepare release fcrepo-4.0.0-alpha-2