Update local user table to new design

This commit will introduce a reusable data table component.
By creating a reusable component, we can ensure tables in the
GUI will look consistent and common table actions (sort, select row)
are shared.

- Created new components directory to store shared components
- Add password-confirmation directive
- Remove some error handling from API utils so it can be
  handled in the UI

TODO:
- Add show/hide toggle to password fields
- Enhance table component with icons
- Manual user unlock
- Batch table actions
- Role table

Signed-off-by: Yoshie Muranaka <yoshiemuranaka@gmail.com>
Change-Id: I03c95874d2942a2450a5da2f1d2a8bb895aa1746
diff --git a/app/index.js b/app/index.js
index a4d4bee..5525aef 100644
--- a/app/index.js
+++ b/app/index.js
@@ -62,6 +62,10 @@
 import dir_paginate from './common/directives/dirPagination.js';
 import form_input_error from './common/directives/form-input-error.js';
 import icon_provider from './common/directives/icon-provider.js';
+import password_confirmation from './common/directives/password-confirmation.js';
+
+import components_index from './common/components/index.js';
+import table_component from './common/components/table/table.js';
 
 import login_index from './login/index.js';
 import login_controller from './login/controllers/login-controller.js';
@@ -97,6 +101,7 @@
 
 import users_index from './users/index.js';
 import user_accounts_controller from './users/controllers/user-accounts-controller.js';
+import username_validator from './users/directives/username-validator.js';
 
 window.angular && (function(angular) {
   'use strict';
@@ -111,7 +116,7 @@
             'ui.bootstrap',
             // Basic resources
             'app.common.services', 'app.common.directives',
-            'app.common.filters',
+            'app.common.filters', 'app.common.components',
             // Model resources
             'app.login', 'app.overview', 'app.serverControl',
             'app.serverHealth', 'app.configuration', 'app.users', 'app.redfish'