Test automation identity

Sorry for this rather large pull request but it could not really be avoided as I am converting the integration test to a SBT multimodule project so that I can share code for an upcoming identity test module. To do that I had to update the Scala framework and use the latest version which included some other changes, such as multibrowser support.
ok I'll rephrase - system properties are a global, untyped map so we're losing all the benefits of compiler and IDE support.  Of course when passing things in from the automation we either have to put them in files or set system properties, so it's fair to use them in that situation, however using them for communicating from one part of your code to another is just putting in something even less safe than a "var" by the back door
@robertberry it is a file because the automation build machine can generate it and pop it in the current directory without having to add it to the classpath. And it can be in the gitignore at the top level.  however I understand that in team city it's hard to generate files and system properties are easier.  The idea is it's not really source code it's a config file - I thought of it a bit like the java.util.logging.config.file.  How does that sound?