WIP: Refactoring of candidate session access ctrl
WIP: Refactor of candidate services

This now uses the new authentication filter, and I've converted the
existing session token idea so that it works like an XSRF token.

Needs testing and tidying next.
Updated Maven plugin versions

A user noted that the 'shade' plugin version (2.0) is not working with
the latest version of Maven. So I've updated that plugin, and other
used plugins to bring them all to their current versions.
Merge branch 'master' into candidate_access_refactoring
Finished initial candidate refactor. Needs tested

The new candidate session management has been refactored and joined up
with the existing MVC and service layers.

I have tested with the demo & instruction functionality and this is
working correctly.

Still need to test with LTI, which I can't do until I'm back in the
office. (At home presently.)
Removed 'public' field from Assessment entity

This ended up never being used as I had originally planned, so is being
dropped as part of a final DB tidy.

NOTE: A schema change will be required. See the migration script:

support/schema-migrations/beta5-to-beta6.sql

(for PostgreSQL)
Removed the 'public' field from DeliverySettings

As with Assessment, this is no longer being used as originally planned.
Final tidy of DB column naming. Fixes issue #44

* Dropped the 'public' field from the Assessment and DeliverySettings
entities. This idea was never developed from my initial plans, and the
existing DB column names caused clashes.
* Renamed other DB column names to avoid those listed in the URL below,
which lists a superset of keywords reserved in various well-known DB
systems.

https://drupal.org/node/141051

Thanks to Kevin Curley for reporting this issue. These changes should
fix bug #44.

NOTE: Existing QTIWorks installations will have to perform a schema
migration for this. See the script
support/schema-migrations/beta5-to-beta6.sql, which will work for
PostgreSQL installations and can be used as a guide for other DBs. If
you have no real data you may want to wipe and reinstall the DB.
Merge branch 'master' into candidate_access_refactoring

Conflicts:
	qtiworks-engine/src/main/java/uk/ac/ed/ph/qtiworks/services/CandidateSessionStarter.java
	qtiworks-engine/support/schema-migrations/beta5-to-beta6.sql
Minor improvements to 'import users' engine action

* Simplified CSV column ordering
* Inline help info now describes the necessary CSV structure
Removed the M4->Beta1 update code form eng mgr

This is no longer required. Anyone still running M4 can should upgrade
to Beta1 as an intermediate step before moving to more recent betas..
Added 'edit password' action to manager
Minor tidy to engine manager inline help
Final tidy of engine manager (for now)

Also tidied up naming of some constants in DomainConstants,
hence the number of files affected by this commit.
Updated dependency versions
Upgraded jQuery library versions
Minor tidy to system user login process
Consolidated JS & CSS in rendering XSLT

These have been moved into some base templates to include as required.
Tidied up session launcher

Fixed issue with the progress bar animation not always appearing in
Chrome, or at least I think I have. I ended up including the image data
within the CSS.
Merge branch 'master' into candidate_access_refactoring

Conflicts:
	qtiworks-engine/src/main/java/uk/ac/ed/ph/qtiworks/domain/DomainConstants.java