Make LenskitConfigScript saner (#406)

Use methodMissing rather than mixin for LenskitConfigScript, allowing the LenskitConfiguration being configured to be changed.
Support reconfiguring existing configs (#406)

- Allow configuration scripts to be loaded
- Export reconfiguration capabilities
Add include-from-file to config DSL (#406)

- Add include(File) and include(String) methods
- Make DSL classes aware of configuration loader
- Update algorithm instance configs to be compatible
Add file configuration to algorithms (#406)

Adds `configureFromFile` to `LenskitAlgorithmInstanceBuilder` to allow configuration from a file and attributes.
Support graph dumping from algorithm file (#406)

- Add algorithm(Map,File) method to support graph dumping from an algorithm file
- Add test to lenskit-eval-maven-plugin to test algorithm file's usability
Deprecate loading from Groovy config strings

This deprecates the String versions of `lenskit-groovy` `load` methods,
as it is confusing that they do not convert the strings to files.
Add algorithm file loading to trainTes (#406)
Merge pull request #421 from elehack/feature/elehack-406-algo-files

Add algorithm file support to evaluator (closes #406).
Fix name of 2.1 release notes file
Document #406 in release notes.
Drop duplicate Hamcrest dep from lenskit-eval
re-add Hamcrest dep to fix eval build
Make lenskit-core build with new Grapht

lenskit-core now builds, but the tests fail
Make LensKit core work with new Grapht (refs #337)
Update graph dumper to work with new Grapht code (refs #337)
Improve Index javadoc
Add key list method to LongKeyDomain
Add mutable and immutable ID indexes to data structures (#428)
Deprecate old indexes (#428)
Add 2.0.5 release notes