Fix focus handling in item list and details view

Re-work focus handling as follows:

 * Add a 'focus' prop to the ItemListView and DetailsView
   components which is set by the parent app view component
   depending on the state of the app.

 * When the focus prop is set to true for a component,
   set the focus either on the root element for the component
   or one of its children.

   Setting the focus is done using a mixin.
Fix error focusing master password field in Chrome extension

An error occurred if the UnlockView component was mounted whilst
unlocked. This can happen in the Chrome extension where the UI
is mounted when the popup view is shown but the state of the app,
including whether it is unlocked or not, is persisted when the popup
view is dismissed.