Moved SubjectProvider to shiro package, fixes #171
V7SecurityManager and SubjectProvider modified to use VaadinSession to
hold current Subject.  Login fails, with a "Not an HTTP Session"
exception
Added VaadinSessionManager.  Loads app but fails with "cookies not
enabled" error
login works, but there are a couple of test failures from changing
security setup
All unit tests green, TestBench login test still to be written, although
login seems to work
Introduced use of VaadinSession to retain current Subject; modified
V7SecurityManager, DefaultShiroWebModule to be no longer web based.
Introduced VaadinSessionManager.  Fixes #180

Authentication seems to work correctly but there is still an issue with
reflecting the current login status via the user interface, see #182
Previous commit comment was wrong.  The last bit should read:

Authentication seems to work correctly but there is still an issue with
reflecting the current login status via the user interface, see #182
Login functionality working using manual merge of #166 and the lelmarir
branch.

The presentation of current login status through the ui also now
works, although multi-tab operation does not refresh until a client
request is made (this is a standard Vaadin problem which could be fixed
using server push or Refresher)

Functional test automation partially done, but multi-tab is still
manually tested
Merge remote-tracking branch 'origin/login' into lelmarir-merge_login

Conflicts:
	V7/build/reports/tests/index.html
	V7/build/reports/tests/uk.co.q3c.util.BasicForestTest.html
	V7/build/reports/tests/uk.co.q3c.util.MessageFormatTest.html
	V7/build/reports/tests/uk.co.q3c.util.html
	V7/build/reports/tests/uk.co.q3c.v7.base.config.ConfigUtilTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.config.V7IniTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.config.html
	V7/build/reports/tests/uk.co.q3c.v7.base.data.DateTimeConverterTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.data.MoneyConverterTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.data.html
	V7/build/reports/tests/uk.co.q3c.v7.base.guice.threadscope.ThreadScopeTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.guice.threadscope.html
	V7/build/reports/tests/uk.co.q3c.v7.base.guice.uiscope.UIScopeTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.guice.uiscope.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.DeconstructPageMappingTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.DefaultInvalidURIExceptionHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.DefaultV7NavigatorTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.LabelKeyForNameTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.MapLineReaderTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.SitemapNodeTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.SitemapTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.SitemapURIConverterTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.StandardPageBuilderTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.StandardPageKeyTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.StrictURIHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.TextReaderSitemapProviderTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.URITrackerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.navigate.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultLoginAttemptLogTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultLoginExceptionHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultRealmTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultURIPermissionFactoryTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultUnauthenticatedExceptionHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.DefaultUnauthorisedExceptionHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.ShiroUnitTestBase.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.URIPermissionsTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.URIViewPermissionTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.V7ErrorHandlerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.V7SecurityManagerTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.shiro.html
	V7/build/reports/tests/uk.co.q3c.v7.base.ui.form.FieldSetTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.ui.form.html
	V7/build/reports/tests/uk.co.q3c.v7.base.useropt.DefaultUserOptionTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.useropt.html
	V7/build/reports/tests/uk.co.q3c.v7.base.view.component.BreadcrumbTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.view.component.LoginStatusPanelTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.view.component.UserNavigationTreeTest.html
	V7/build/reports/tests/uk.co.q3c.v7.base.view.component.html
	V7/build/reports/tests/uk.co.q3c.v7.i18n.AnnotationI18NInterpreterTest.html
	V7/build/reports/tests/uk.co.q3c.v7.i18n.CurrentLocaleTest.html
	V7/build/reports/tests/uk.co.q3c.v7.i18n.I18NTest.html
	V7/build/reports/tests/uk.co.q3c.v7.i18n.I18NValueTest.html
	V7/build/reports/tests/uk.co.q3c.v7.i18n.html
	V7/src/main/java/uk/co/q3c/v7/base/config/IniModule.java
	V7/src/main/java/uk/co/q3c/v7/base/guice/BaseGuiceServletInjector.java
	V7/src/main/java/uk/co/q3c/v7/base/guice/BaseModule.java
	V7/src/main/java/uk/co/q3c/v7/base/navigate/DefaultV7Navigator.java
	V7/src/main/java/uk/co/q3c/v7/base/shiro/DefaultShiroModule.java
	V7/src/main/java/uk/co/q3c/v7/base/shiro/LoginStatusListener.java
	V7/src/main/java/uk/co/q3c/v7/base/shiro/V7SecurityManager.java
	V7/src/main/java/uk/co/q3c/v7/base/shiro/VaadinSessionManager.java
	V7/src/main/java/uk/co/q3c/v7/base/ui/BasicUI.java
	V7/src/main/java/uk/co/q3c/v7/base/ui/DefaultApplicationUI.java
	V7/src/main/java/uk/co/q3c/v7/base/ui/ScopedUI.java
	V7/src/main/java/uk/co/q3c/v7/base/view/DefaultLoginView.java
	V7/src/main/java/uk/co/q3c/v7/base/view/component/DefaultUserNavigationTree.java
	V7/src/test/java/uk/co/q3c/v7/base/guice/uiscope/UIScopeTest.java
	V7/src/test/java/uk/co/q3c/v7/base/navigate/DefaultV7NavigatorTest.java
	V7/src/test/java/uk/co/q3c/v7/base/navigate/StrictURIHandlerTest.java
	V7/src/test/java/uk/co/q3c/v7/base/shiro/V7SecurityManagerTest.java
	V7/src/test/java/uk/co/q3c/v7/base/ui/TestUI.java
	V7/src/test/java/uk/co/q3c/v7/base/view/component/LoginStatusPanelTest.java
	V7/src/test/java/uk/co/q3c/v7/base/view/component/UserNavigationTreeTest.java
fix merge and loginStatusListener rewrited
static final Logger LOGGER
rename V7ShiroVaadinModule to ShiroVaadinModule
removed Injector injection (not used)
fixed navigation skip condition
LoginStatusHandler must be SessionScoped
fix previous merge
renamed LoginStatusHandler to SessionLoginStatusHandler
to make it clear that is (and should be) session scoped
and removed from ScopedUI (not used)
global LoginStatusListener
WeakSet for listeners
if the subject does not exist: create and set it to the session