Remove useless double variable initialization.
Move ID_LENGTH to where it belongs - it was a duplicate constant anyway. This also resolves a TODO.
Fix synchronization issue:
We should either not synchronize at all or synchronize over the full processing of the result set. Since we might use lazy query evaluation mode some day, I'd like to have full synchronization.
Fix identity creation not being possible when none exist
Fix hardcoding of the CreateIdentityWebInterfaceToadlet URI in LogInPage.makeCreateIdentityBox():
- fixed by providing a generic webInterface.getToadlet()
Don't generate an error message for SizeLimitExceededException here - we do not process user-entered information so this is very unlikely to happen and if it does there is no extra error message needed.
Remove l10n strings which are now incorrect since the HomePage was renamed to StatisticsPage:
I cannot update them since I don't speak those languages
Organize imports
Hide all menu entries except the "Log in" entry when no WOT identity is logged in
Use URI objects instead of String
Deny access to Toadlets by URI if there is no user logged in:
- Previously we would only hide them from the menu, which is an obvious security flaw
- Redirect the user to the Login Toadlet as a measure for denying access
- Notice that the CreateIdentityWebInterfaceToadlet is always allowed because the user needs to be able to create an identity for being able to log in
Implement a "Log out" menu entry on the web interface:
- Notice that LogOutWebInterfaceToadlet is an adapted copypasta of Freetalk. Didn't commit the original unmodified one first since the class is very small.
Rename MAX_IDENTITY_ID_LENGTH to LENGTH.

The field is already in the Identity.IdentityID class, and as the assert
demonstrates it is the exact length of an identity ID. Also re-adds
documentation that the length is that of a SSK public key hash.
Move local identities page to homepage.

This page gives feedback on which identity is logged in, and is
apparently less intensive than the statistics page to assemble. The
statistics page is also registered later so that it is lower in the
list, which makes it less prominent.
Get rid of IdentityAttributeListSubscription / IdentityAttributeListChangedNotification:
- We have TrustListSubscription, ScoreListSubscription and IdentityListSubscription. IdentityAttributeListSubscription is incoherent with that and probably overkill. If a client wants to subscribe to the list of identities it IS probably interested in its attributes as well, so the IdentityListSubscription shall provide them.
- Notice that this actually renames IdentityAttributeListSubscription to IdentityListSubscription since this is easier than refactoring the current IdentityListSubscription.
- Notice that we keep IdentityChangedNotification instead of IdentityListChangedNotification because the Score/Trust notifications are currently misnamed, i.e. they are "TrustChangedNotification" instead of "TrustListChangedNotification". So we keep the now misnamed IdentityChangedNotification to be coherent with that
Cross-reference relationship between Subscription and Notification classes in JavaDoc
Rename "TrustListSubscription" to "TrustsSubscription":
- The purpose of the subscription is NOT to notify the user if we import a new XML trust list. Instead it is meant as a subscription to the set of all known trusts. This set was imprecisely referred to as a list in the name. It also notifies the user if he changes a trust value locally - there is no trust list involved in that. 
- Notice that I didn't rename it to "TrustSet" subscription because this would sound like its a subscription to a specific set of trust values, but it is a subscription to ALL of them.
Rename ScoreListSubscription to be coherent with the previous commit.
Rename IdentityListSubscription to be coherent with the second to last commit.
Fix JavaDoc syntax