http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/package-lock.json
----------------------------------------------------------------------
diff --git a/package-lock.json b/package-lock.json
index 973c80c..4a44e34 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,101 +1,109 @@
 {
   "name": "nifi-fds",
-  "version": "0.0.1",
+  "version": "0.0.0",
   "lockfileVersion": 1,
   "requires": true,
   "dependencies": {
     "@angular/animations": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/animations/-/animations-4.4.6.tgz";,
-      "integrity": "sha1-+mYYmaik44y3xYPHpcl85l1ZKjU=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/animations/-/animations-5.2.0.tgz";,
+      "integrity": 
"sha512-JLR42YHiJppO4ruAkFxgbzghUDtHkXHkKPM8udd2qyt16T7e1OX7EEOrrmldUu59CC56tZnJ/32p4SrYmxyBSA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/cdk": {
-      "version": "2.0.0-beta.12",
-      "resolved": 
"https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.12.tgz";,
-      "integrity": "sha1-OiQ8tiuT9OA5EgunD5ANyeI1Yi4=",
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-5.2.0.tgz";,
+      "integrity": "sha1-Q2j2dJ6RXNzHXTJa4z/bP4WogQg=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/common": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/common/-/common-4.4.6.tgz";,
-      "integrity": "sha1-S4FCByTggooOg5uVpV6xp+g5GPI=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/common/-/common-5.2.0.tgz";,
+      "integrity": 
"sha512-yMFn2isC7/XOs56/2Kzzbb1AASHiwipAPOVFtKe7TdZQClO8fJXwCnk326rzr615+CG0eSBNQWeiFGyWN2riBA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/compiler": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/compiler/-/compiler-4.4.6.tgz";,
-      "integrity": "sha1-LuH68lt1fh0SiXkHS+f65SmzvCA=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.0.tgz";,
+      "integrity": 
"sha512-RfYa4ESgjGX0T0ob/Xz00IF7nd2xZkoyRy6oKgL82q42uzB3xZUDMrFNgeGxAUs3H22IkL46/5SSPOMOTMZ0NA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/core": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.4.6.tgz";,
-      "integrity": "sha1-EwMf0Q3P5DiHVBmzjyESCVi8I1Q=",
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.0.tgz";,
+      "integrity": 
"sha512-s2ne45DguNUubhC1YgybGECC4Tyx3G4EZCntUiRMDWWkmKXSK+6dgHMesyDo8R5Oat8VfN4Anf8l3JHS1He8kg==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/flex-layout": {
-      "version": "2.0.0-beta.9",
-      "resolved": 
"https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.9.tgz";,
-      "integrity": "sha1-PlT4mOgF0LFCbRXmE520FdBO518=",
+      "version": "5.0.0-beta.14",
+      "resolved": 
"https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-5.0.0-beta.14.tgz";,
+      "integrity": 
"sha512-/fsOqXFUKdCmzzZx0bZ0HCYwcV+BSbVuIgOhaCrZKHj2rqiWKKPgj1ErU3HMT68bBBGag0u0skTdLGtrBorRIA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/forms": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/forms/-/forms-4.4.6.tgz";,
-      "integrity": "sha1-/mSs5CQ1wbgPSQNLfEHOjK8UpEo=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/forms/-/forms-5.2.0.tgz";,
+      "integrity": 
"sha512-g1/SF9lY0ZwzJ0w4NXbFsTGGEuUdgtaZny8DmkaqtmA7idby3FW398X0tv25KQfVYKtL+p9Jp1Y8EI0CvrIsvw==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/http": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.4.6.tgz";,
-      "integrity": "sha1-CvaAxnEL3AJtlA4iXP0PalwAXQw=",
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.0.tgz";,
+      "integrity": 
"sha512-V5Cl24dP3rCXTTQvDc0TIKoWqBRAa0DWAQbtr7iuDAt5a1vPGdKz5K1sEiiV6ziwX6gzjiwHjUvL+B+WbIUrQA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/material": {
-      "version": "2.0.0-beta.12",
-      "resolved": 
"https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.12.tgz";,
-      "integrity": "sha1-cbbQt7AhiR5dDjaIwdS9eMdFf1g=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/material/-/material-5.2.0.tgz";,
+      "integrity": "sha1-hZnjFJ1ISH4+kulB+p3FUXbjoM8=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/platform-browser": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.4.6.tgz";,
-      "integrity": "sha1-qYOcVH4bZU+h0kqJeAyLpquNzOA=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.0.tgz";,
+      "integrity": 
"sha512-c6cR15MfopPwGZ097HdRuAi9+R9BhA3bRRFpP2HmrSSB/BW4ZNovUYwB2QUMSYbd9s0lYTtnavqGm6DKcyF2QA==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/platform-browser-dynamic": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.4.6.tgz";,
-      "integrity": "sha1-TT2aanvyzz3kBYphWuBZ7/ZB+jY=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz";,
+      "integrity": 
"sha512-xG1eNoi8sm4Jcly2y98r5mqYVe3XV8sUJCtOhvGBYtvt4dKEQ5tOns6fWQ0nUbl6Vv3Y0xgGUS1JCtfut3DuaQ==",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/router": {
-      "version": "4.4.6",
-      "resolved": 
"https://registry.npmjs.org/@angular/router/-/router-4.4.6.tgz";,
-      "integrity": "sha1-D2rSmuD/jSyeo3m9MgRHIXt+yGY=",
+      "version": "5.2.0",
+      "resolved": 
"https://registry.npmjs.org/@angular/router/-/router-5.2.0.tgz";,
+      "integrity": 
"sha512-VXDXtp2A1GQEUEhXg0ZzqHdTUERLgDSo3/Mmpzt+dgLMKlXDSCykcm4gINwE5VQLGD1zQvDFCCRv3seGRNfrqA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@covalent/core": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/@covalent/core/-/core-1.0.0.tgz";,
+      "integrity": 
"sha512-qUGL6CtyHNa3ttKGrvuQY0lJyQR9Dxp04vP0vrXmYrKapVbfYZ82qwJ2+PrX1EcWAQ6b/B2giFe0Q83ePin04g==",
       "requires": {
         "tslib": "1.9.0"
       }
@@ -107,9 +115,9 @@
       "dev": true
     },
     "@types/node": {
-      "version": "6.0.103",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.103.tgz";,
-      "integrity": 
"sha512-EHU5B9OlENiGEziLiC2XjhjBoVTiX6s4JwZrMHkLQzrzOA0bfZKfcT3fZaalgujcrs2O97VgKaxqguwV+12UJQ==",
+      "version": "6.0.106",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.106.tgz";,
+      "integrity": 
"sha512-U4Zv5fx7letrisRv6HgSSPSY00FZM4NMIkilt+IAExvQLuNa6jYVwCKcnSs2NqTN4+KDl9PskvcCiMce9iePCA==",
       "dev": true
     },
     "@types/q": {
@@ -237,8 +245,8 @@
         "async": "2.6.0",
         "buffer-crc32": "0.2.13",
         "glob": "7.1.2",
-        "lodash": "4.17.5",
-        "readable-stream": "2.3.5",
+        "lodash": "4.17.10",
+        "readable-stream": "2.3.6",
         "tar-stream": "1.5.5",
         "walkdir": "0.0.11",
         "zip-stream": "1.2.0"
@@ -250,7 +258,7 @@
           "integrity": 
"sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
           "dev": true,
           "requires": {
-            "lodash": "4.17.5"
+            "lodash": "4.17.10"
           }
         },
         "glob": {
@@ -268,9 +276,9 @@
           }
         },
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         },
         "minimatch": {
@@ -293,9 +301,9 @@
         "glob": "7.1.2",
         "graceful-fs": "4.1.11",
         "lazystream": "1.0.0",
-        "lodash": "4.17.5",
+        "lodash": "4.17.10",
         "normalize-path": "2.1.1",
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       },
       "dependencies": {
         "glob": {
@@ -312,10 +320,16 @@
             "path-is-absolute": "1.0.1"
           }
         },
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        },
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         },
         "minimatch": {
@@ -336,7 +350,7 @@
       "dev": true,
       "requires": {
         "delegates": "1.0.0",
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       }
     },
     "argparse": {
@@ -466,9 +480,9 @@
       "dev": true
     },
     "aws4": {
-      "version": "1.6.0",
-      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz";,
-      "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz";,
+      "integrity": 
"sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
       "dev": true
     },
     "backo2": {
@@ -526,7 +540,7 @@
       "integrity": 
"sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
       "dev": true,
       "requires": {
-        "readable-stream": "2.3.5",
+        "readable-stream": "2.3.6",
         "safe-buffer": "5.1.1"
       }
     },
@@ -561,7 +575,7 @@
         "content-type": "1.0.4",
         "debug": "2.6.9",
         "depd": "1.1.2",
-        "http-errors": "1.6.2",
+        "http-errors": "1.6.3",
         "iconv-lite": "0.4.19",
         "on-finished": "2.3.0",
         "qs": "6.5.1",
@@ -685,7 +699,7 @@
       "requires": {
         "anymatch": "1.3.2",
         "async-each": "1.0.1",
-        "fsevents": "1.1.3",
+        "fsevents": "1.2.2",
         "glob-parent": "2.0.0",
         "inherits": "2.0.3",
         "is-binary-path": "1.0.1",
@@ -742,13 +756,13 @@
       "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
       "dev": true,
       "requires": {
-        "lodash": "4.17.5"
+        "lodash": "4.17.10"
       },
       "dependencies": {
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         }
       }
@@ -795,7 +809,7 @@
         "buffer-crc32": "0.2.13",
         "crc32-stream": "2.0.0",
         "normalize-path": "2.1.1",
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       }
     },
     "concat-map": {
@@ -835,9 +849,9 @@
       "dev": true
     },
     "core-js": {
-      "version": "2.5.4",
-      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.4.tgz";,
-      "integrity": "sha1-8si/GB8qgLkvNgEhQpzmOi8K6uA=",
+      "version": "2.5.5",
+      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.5.tgz";,
+      "integrity": "sha1-sU3ek2xkDAV5prUMq8wTLdYSfjs=",
       "dev": true
     },
     "core-util-is": {
@@ -859,7 +873,7 @@
       "dev": true,
       "requires": {
         "crc": "3.5.0",
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       }
     },
     "cross-spawn": {
@@ -881,6 +895,15 @@
             "pseudomap": "1.0.2",
             "yallist": "2.1.2"
           }
+        },
+        "which": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz";,
+          "integrity": 
"sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
+          "dev": true,
+          "requires": {
+            "isexe": "2.0.0"
+          }
         }
       }
     },
@@ -984,7 +1007,7 @@
         "object-assign": "4.1.1",
         "pify": "2.3.0",
         "pinkie-promise": "2.0.1",
-        "rimraf": "2.6.2"
+        "rimraf": "2.2.8"
       }
     },
     "delayed-stream": {
@@ -1242,9 +1265,9 @@
       "dev": true
     },
     "eventemitter3": {
-      "version": "1.2.0",
-      "resolved": 
"https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz";,
-      "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=",
+      "version": "3.0.1",
+      "resolved": 
"https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.0.1.tgz";,
+      "integrity": 
"sha512-QOCPu979MMWX9XNlfRZoin+Wm+bK1SP7vv3NGUniYwuSJK/+cPA10blMaeRgzg31RvoSFk6FsCDVa4vNryBTGA==",
       "dev": true
     },
     "exit": {
@@ -1423,11 +1446,51 @@
         "lodash": "2.4.2"
       },
       "dependencies": {
+        "glob": {
+          "version": "3.2.11",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz";,
+          "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
+          "dev": true,
+          "requires": {
+            "inherits": "2.0.3",
+            "minimatch": "0.3.0"
+          }
+        },
         "lodash": {
           "version": "2.4.2",
           "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz";,
           "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
           "dev": true
+        },
+        "minimatch": {
+          "version": "0.3.0",
+          "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz";,
+          "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
+          "dev": true,
+          "requires": {
+            "lru-cache": "2.7.3",
+            "sigmund": "1.0.1"
+          }
+        }
+      }
+    },
+    "follow-redirects": {
+      "version": "1.4.1",
+      "resolved": 
"https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.4.1.tgz";,
+      "integrity": 
"sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==",
+      "dev": true,
+      "requires": {
+        "debug": "3.1.0"
+      },
+      "dependencies": {
+        "debug": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz";,
+          "integrity": 
"sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
         }
       }
     },
@@ -1479,39 +1542,29 @@
       "dev": true
     },
     "fsevents": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz";,
-      "integrity": 
"sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.2.tgz";,
+      "integrity": 
"sha512-iownA+hC4uHFp+7gwP/y5SzaiUo7m2vpa0dhpzw8YuKtiZsz7cIXsFbXpLEeBM6WuCQyw1MH4RRe6XI8GFUctQ==",
       "dev": true,
       "optional": true,
       "requires": {
         "nan": "2.10.0",
-        "node-pre-gyp": "0.6.39"
+        "node-pre-gyp": "0.9.1"
       },
       "dependencies": {
         "abbrev": {
-          "version": "1.1.0",
+          "version": "1.1.1",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "ajv": {
-          "version": "4.11.8",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "co": "4.6.0",
-            "json-stable-stringify": "1.0.1"
-          }
-        },
         "ansi-regex": {
           "version": "2.1.1",
           "bundled": true,
           "dev": true
         },
         "aproba": {
-          "version": "1.1.1",
+          "version": "1.2.0",
           "bundled": true,
           "dev": true,
           "optional": true
@@ -1523,91 +1576,25 @@
           "optional": true,
           "requires": {
             "delegates": "1.0.0",
-            "readable-stream": "2.2.9"
+            "readable-stream": "2.3.6"
           }
         },
-        "asn1": {
-          "version": "0.2.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "assert-plus": {
-          "version": "0.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "asynckit": {
-          "version": "0.4.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "aws-sign2": {
-          "version": "0.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "aws4": {
-          "version": "1.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
         "balanced-match": {
-          "version": "0.4.2",
+          "version": "1.0.0",
           "bundled": true,
           "dev": true
         },
-        "bcrypt-pbkdf": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "tweetnacl": "0.14.5"
-          }
-        },
-        "block-stream": {
-          "version": "0.0.9",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "inherits": "2.0.3"
-          }
-        },
-        "boom": {
-          "version": "2.10.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "hoek": "2.16.3"
-          }
-        },
         "brace-expansion": {
-          "version": "1.1.7",
+          "version": "1.1.11",
           "bundled": true,
           "dev": true,
           "requires": {
-            "balanced-match": "0.4.2",
+            "balanced-match": "1.0.0",
             "concat-map": "0.0.1"
           }
         },
-        "buffer-shims": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "caseless": {
-          "version": "0.12.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "co": {
-          "version": "4.6.0",
+        "chownr": {
+          "version": "1.0.1",
           "bundled": true,
           "dev": true,
           "optional": true
@@ -1617,14 +1604,6 @@
           "bundled": true,
           "dev": true
         },
-        "combined-stream": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "delayed-stream": "1.0.0"
-          }
-        },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
@@ -1638,35 +1617,11 @@
         "core-util-is": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true
-        },
-        "cryptiles": {
-          "version": "2.0.5",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "boom": "2.10.1"
-          }
-        },
-        "dashdash": {
-          "version": "1.14.1",
-          "bundled": true,
           "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "1.0.0"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
+          "optional": true
         },
         "debug": {
-          "version": "2.6.8",
+          "version": "2.6.9",
           "bundled": true,
           "dev": true,
           "optional": true,
@@ -1680,11 +1635,6 @@
           "dev": true,
           "optional": true
         },
-        "delayed-stream": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
         "delegates": {
           "version": "1.0.0",
           "bundled": true,
@@ -1692,74 +1642,25 @@
           "optional": true
         },
         "detect-libc": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "ecc-jsbn": {
-          "version": "0.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsbn": "0.1.1"
-          }
-        },
-        "extend": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "extsprintf": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "forever-agent": {
-          "version": "0.6.1",
+          "version": "1.0.3",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "form-data": {
-          "version": "2.1.4",
+        "fs-minipass": {
+          "version": "1.2.5",
           "bundled": true,
           "dev": true,
           "optional": true,
           "requires": {
-            "asynckit": "0.4.0",
-            "combined-stream": "1.0.5",
-            "mime-types": "2.1.15"
+            "minipass": "2.2.4"
           }
         },
         "fs.realpath": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true
-        },
-        "fstream": {
-          "version": "1.0.11",
-          "bundled": true,
           "dev": true,
-          "requires": {
-            "graceful-fs": "4.1.11",
-            "inherits": "2.0.3",
-            "mkdirp": "0.5.1",
-            "rimraf": "2.6.1"
-          }
-        },
-        "fstream-ignore": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "fstream": "1.0.11",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4"
-          }
+          "optional": true
         },
         "gauge": {
           "version": "2.7.4",
@@ -1767,7 +1668,7 @@
           "dev": true,
           "optional": true,
           "requires": {
-            "aproba": "1.1.1",
+            "aproba": "1.2.0",
             "console-control-strings": "1.1.0",
             "has-unicode": "2.0.1",
             "object-assign": "4.1.1",
@@ -1777,27 +1678,11 @@
             "wide-align": "1.1.2"
           }
         },
-        "getpass": {
-          "version": "0.1.7",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "1.0.0"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
         "glob": {
           "version": "7.1.2",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "fs.realpath": "1.0.0",
             "inflight": "1.0.6",
@@ -1807,64 +1692,35 @@
             "path-is-absolute": "1.0.1"
           }
         },
-        "graceful-fs": {
-          "version": "4.1.11",
-          "bundled": true,
-          "dev": true
-        },
-        "har-schema": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "har-validator": {
-          "version": "4.2.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ajv": "4.11.8",
-            "har-schema": "1.0.5"
-          }
-        },
         "has-unicode": {
           "version": "2.0.1",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "hawk": {
-          "version": "3.1.3",
+        "iconv-lite": {
+          "version": "0.4.21",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
-            "boom": "2.10.1",
-            "cryptiles": "2.0.5",
-            "hoek": "2.16.3",
-            "sntp": "1.0.9"
+            "safer-buffer": "2.1.2"
           }
         },
-        "hoek": {
-          "version": "2.16.3",
-          "bundled": true,
-          "dev": true
-        },
-        "http-signature": {
-          "version": "1.1.1",
+        "ignore-walk": {
+          "version": "3.0.1",
           "bundled": true,
           "dev": true,
           "optional": true,
           "requires": {
-            "assert-plus": "0.2.0",
-            "jsprim": "1.4.0",
-            "sshpk": "1.13.0"
+            "minimatch": "3.0.4"
           }
         },
         "inflight": {
           "version": "1.0.6",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "once": "1.4.0",
             "wrappy": "1.0.2"
@@ -1876,7 +1732,7 @@
           "dev": true
         },
         "ini": {
-          "version": "1.3.4",
+          "version": "1.3.5",
           "bundled": true,
           "dev": true,
           "optional": true
@@ -1889,111 +1745,43 @@
             "number-is-nan": "1.0.1"
           }
         },
-        "is-typedarray": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
         "isarray": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true
-        },
-        "isstream": {
-          "version": "0.1.2",
-          "bundled": true,
           "dev": true,
           "optional": true
         },
-        "jodid25519": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsbn": "0.1.1"
-          }
-        },
-        "jsbn": {
-          "version": "0.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "json-schema": {
-          "version": "0.2.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "json-stable-stringify": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsonify": "0.0.0"
-          }
-        },
-        "json-stringify-safe": {
-          "version": "5.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "jsonify": {
-          "version": "0.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "jsprim": {
-          "version": "1.4.0",
+        "minimatch": {
+          "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
-            "assert-plus": "1.0.0",
-            "extsprintf": "1.0.2",
-            "json-schema": "0.2.3",
-            "verror": "1.3.6"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
+            "brace-expansion": "1.1.11"
           }
         },
-        "mime-db": {
-          "version": "1.27.0",
+        "minimist": {
+          "version": "0.0.8",
           "bundled": true,
           "dev": true
         },
-        "mime-types": {
-          "version": "2.1.15",
+        "minipass": {
+          "version": "2.2.4",
           "bundled": true,
           "dev": true,
           "requires": {
-            "mime-db": "1.27.0"
+            "safe-buffer": "5.1.1",
+            "yallist": "3.0.2"
           }
         },
-        "minimatch": {
-          "version": "3.0.4",
+        "minizlib": {
+          "version": "1.1.0",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
-            "brace-expansion": "1.1.7"
+            "minipass": "2.2.4"
           }
         },
-        "minimist": {
-          "version": "0.0.8",
-          "bundled": true,
-          "dev": true
-        },
         "mkdirp": {
           "version": "0.5.1",
           "bundled": true,
@@ -2008,23 +1796,33 @@
           "dev": true,
           "optional": true
         },
+        "needle": {
+          "version": "2.2.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "debug": "2.6.9",
+            "iconv-lite": "0.4.21",
+            "sax": "1.2.4"
+          }
+        },
         "node-pre-gyp": {
-          "version": "0.6.39",
+          "version": "0.9.1",
           "bundled": true,
           "dev": true,
           "optional": true,
           "requires": {
-            "detect-libc": "1.0.2",
-            "hawk": "3.1.3",
+            "detect-libc": "1.0.3",
             "mkdirp": "0.5.1",
+            "needle": "2.2.0",
             "nopt": "4.0.1",
-            "npmlog": "4.1.0",
-            "rc": "1.2.1",
-            "request": "2.81.0",
-            "rimraf": "2.6.1",
-            "semver": "5.3.0",
-            "tar": "2.2.1",
-            "tar-pack": "3.4.0"
+            "npm-packlist": "1.1.10",
+            "npmlog": "4.1.2",
+            "rc": "1.2.6",
+            "rimraf": "2.6.2",
+            "semver": "5.5.0",
+            "tar": "4.4.1"
           }
         },
         "nopt": {
@@ -2033,12 +1831,28 @@
           "dev": true,
           "optional": true,
           "requires": {
-            "abbrev": "1.1.0",
-            "osenv": "0.1.4"
+            "abbrev": "1.1.1",
+            "osenv": "0.1.5"
+          }
+        },
+        "npm-bundled": {
+          "version": "1.0.3",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "npm-packlist": {
+          "version": "1.1.10",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ignore-walk": "3.0.1",
+            "npm-bundled": "1.0.3"
           }
         },
         "npmlog": {
-          "version": "4.1.0",
+          "version": "4.1.2",
           "bundled": true,
           "dev": true,
           "optional": true,
@@ -2054,12 +1868,6 @@
           "bundled": true,
           "dev": true
         },
-        "oauth-sign": {
-          "version": "0.8.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
         "object-assign": {
           "version": "4.1.1",
           "bundled": true,
@@ -2087,7 +1895,7 @@
           "optional": true
         },
         "osenv": {
-          "version": "0.1.4",
+          "version": "0.1.5",
           "bundled": true,
           "dev": true,
           "optional": true,
@@ -2099,39 +1907,23 @@
         "path-is-absolute": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true
-        },
-        "performance-now": {
-          "version": "0.2.0",
-          "bundled": true,
           "dev": true,
           "optional": true
         },
         "process-nextick-args": {
-          "version": "1.0.7",
-          "bundled": true,
-          "dev": true
-        },
-        "punycode": {
-          "version": "1.4.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "qs": {
-          "version": "6.4.0",
+          "version": "2.0.0",
           "bundled": true,
           "dev": true,
           "optional": true
         },
         "rc": {
-          "version": "1.2.1",
+          "version": "1.2.6",
           "bundled": true,
           "dev": true,
           "optional": true,
           "requires": {
             "deep-extend": "0.4.2",
-            "ini": "1.3.4",
+            "ini": "1.3.5",
             "minimist": "1.2.0",
             "strip-json-comments": "2.0.1"
           },
@@ -2145,227 +1937,118 @@
           }
         },
         "readable-stream": {
-          "version": "2.2.9",
+          "version": "2.3.6",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
-            "buffer-shims": "1.0.0",
             "core-util-is": "1.0.2",
             "inherits": "2.0.3",
             "isarray": "1.0.0",
-            "process-nextick-args": "1.0.7",
-            "string_decoder": "1.0.1",
+            "process-nextick-args": "2.0.0",
+            "safe-buffer": "5.1.1",
+            "string_decoder": "1.1.1",
             "util-deprecate": "1.0.2"
           }
         },
-        "request": {
-          "version": "2.81.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "aws-sign2": "0.6.0",
-            "aws4": "1.6.0",
-            "caseless": "0.12.0",
-            "combined-stream": "1.0.5",
-            "extend": "3.0.1",
-            "forever-agent": "0.6.1",
-            "form-data": "2.1.4",
-            "har-validator": "4.2.1",
-            "hawk": "3.1.3",
-            "http-signature": "1.1.1",
-            "is-typedarray": "1.0.0",
-            "isstream": "0.1.2",
-            "json-stringify-safe": "5.0.1",
-            "mime-types": "2.1.15",
-            "oauth-sign": "0.8.2",
-            "performance-now": "0.2.0",
-            "qs": "6.4.0",
-            "safe-buffer": "5.0.1",
-            "stringstream": "0.0.5",
-            "tough-cookie": "2.3.2",
-            "tunnel-agent": "0.6.0",
-            "uuid": "3.0.1"
-          }
-        },
         "rimraf": {
-          "version": "2.6.1",
+          "version": "2.6.2",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "glob": "7.1.2"
           }
         },
         "safe-buffer": {
-          "version": "5.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "semver": {
-          "version": "5.3.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "set-blocking": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "signal-exit": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "sntp": {
-          "version": "1.0.9",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "hoek": "2.16.3"
-          }
-        },
-        "sshpk": {
-          "version": "1.13.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "asn1": "0.2.3",
-            "assert-plus": "1.0.0",
-            "bcrypt-pbkdf": "1.0.1",
-            "dashdash": "1.14.1",
-            "ecc-jsbn": "0.1.1",
-            "getpass": "0.1.7",
-            "jodid25519": "1.0.2",
-            "jsbn": "0.1.1",
-            "tweetnacl": "0.14.5"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "string-width": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "code-point-at": "1.1.0",
-            "is-fullwidth-code-point": "1.0.0",
-            "strip-ansi": "3.0.1"
-          }
+          "version": "5.1.1",
+          "bundled": true,
+          "dev": true
         },
-        "string_decoder": {
-          "version": "1.0.1",
+        "safer-buffer": {
+          "version": "2.1.2",
           "bundled": true,
           "dev": true,
-          "requires": {
-            "safe-buffer": "5.0.1"
-          }
+          "optional": true
         },
-        "stringstream": {
-          "version": "0.0.5",
+        "sax": {
+          "version": "1.2.4",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "strip-ansi": {
-          "version": "3.0.1",
+        "semver": {
+          "version": "5.5.0",
           "bundled": true,
           "dev": true,
-          "requires": {
-            "ansi-regex": "2.1.1"
-          }
+          "optional": true
         },
-        "strip-json-comments": {
-          "version": "2.0.1",
+        "set-blocking": {
+          "version": "2.0.0",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "tar": {
-          "version": "2.2.1",
+        "signal-exit": {
+          "version": "3.0.2",
           "bundled": true,
           "dev": true,
-          "requires": {
-            "block-stream": "0.0.9",
-            "fstream": "1.0.11",
-            "inherits": "2.0.3"
-          }
+          "optional": true
         },
-        "tar-pack": {
-          "version": "3.4.0",
+        "string-width": {
+          "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
-            "debug": "2.6.8",
-            "fstream": "1.0.11",
-            "fstream-ignore": "1.0.5",
-            "once": "1.4.0",
-            "readable-stream": "2.2.9",
-            "rimraf": "2.6.1",
-            "tar": "2.2.1",
-            "uid-number": "0.0.6"
+            "code-point-at": "1.1.0",
+            "is-fullwidth-code-point": "1.0.0",
+            "strip-ansi": "3.0.1"
           }
         },
-        "tough-cookie": {
-          "version": "2.3.2",
+        "string_decoder": {
+          "version": "1.1.1",
           "bundled": true,
           "dev": true,
           "optional": true,
           "requires": {
-            "punycode": "1.4.1"
+            "safe-buffer": "5.1.1"
           }
         },
-        "tunnel-agent": {
-          "version": "0.6.0",
+        "strip-ansi": {
+          "version": "3.0.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
-            "safe-buffer": "5.0.1"
+            "ansi-regex": "2.1.1"
           }
         },
-        "tweetnacl": {
-          "version": "0.14.5",
+        "strip-json-comments": {
+          "version": "2.0.1",
           "bundled": true,
           "dev": true,
           "optional": true
         },
-        "uid-number": {
-          "version": "0.0.6",
+        "tar": {
+          "version": "4.4.1",
           "bundled": true,
           "dev": true,
-          "optional": true
+          "optional": true,
+          "requires": {
+            "chownr": "1.0.1",
+            "fs-minipass": "1.2.5",
+            "minipass": "2.2.4",
+            "minizlib": "1.1.0",
+            "mkdirp": "0.5.1",
+            "safe-buffer": "5.1.1",
+            "yallist": "3.0.2"
+          }
         },
         "util-deprecate": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true
-        },
-        "uuid": {
-          "version": "3.0.1",
-          "bundled": true,
           "dev": true,
           "optional": true
         },
-        "verror": {
-          "version": "1.3.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "extsprintf": "1.0.2"
-          }
-        },
         "wide-align": {
           "version": "1.1.2",
           "bundled": true,
@@ -2379,6 +2062,11 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true
+        },
+        "yallist": {
+          "version": "3.0.2",
+          "bundled": true,
+          "dev": true
         }
       }
     },
@@ -2391,7 +2079,15 @@
         "graceful-fs": "4.1.11",
         "inherits": "2.0.3",
         "mkdirp": "0.5.1",
-        "rimraf": "2.6.2"
+        "rimraf": "2.2.8"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        }
       }
     },
     "gauge": {
@@ -2469,13 +2165,22 @@
       "optional": true
     },
     "glob": {
-      "version": "3.2.11",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz";,
-      "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
+      "version": "3.1.21",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz";,
+      "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
       "dev": true,
       "requires": {
-        "inherits": "2.0.3",
-        "minimatch": "0.3.0"
+        "graceful-fs": "1.2.3",
+        "inherits": "1.0.2",
+        "minimatch": "0.2.14"
+      },
+      "dependencies": {
+        "inherits": {
+          "version": "1.0.2",
+          "resolved": 
"https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz";,
+          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
+          "dev": true
+        }
       }
     },
     "glob-base": {
@@ -2543,7 +2248,7 @@
       "dev": true,
       "requires": {
         "glob": "7.1.2",
-        "lodash": "4.17.5",
+        "lodash": "4.17.10",
         "minimatch": "3.0.4"
       },
       "dependencies": {
@@ -2562,9 +2267,9 @@
           }
         },
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         },
         "minimatch": {
@@ -2579,9 +2284,9 @@
       }
     },
     "graceful-fs": {
-      "version": "4.1.11",
-      "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
-      "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+      "version": "1.2.3",
+      "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";,
+      "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
       "dev": true
     },
     "grunt": {
@@ -2610,62 +2315,6 @@
         "rimraf": "2.2.8",
         "underscore.string": "2.2.1",
         "which": "1.0.9"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "3.1.21",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz";,
-          "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
-          "dev": true,
-          "requires": {
-            "graceful-fs": "1.2.3",
-            "inherits": "1.0.2",
-            "minimatch": "0.2.14"
-          }
-        },
-        "graceful-fs": {
-          "version": "1.2.3",
-          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";,
-          "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
-          "dev": true
-        },
-        "inherits": {
-          "version": "1.0.2",
-          "resolved": 
"https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz";,
-          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "0.2.14",
-          "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz";,
-          "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
-          "dev": true,
-          "requires": {
-            "lru-cache": "2.7.3",
-            "sigmund": "1.0.1"
-          }
-        },
-        "nopt": {
-          "version": "1.0.10",
-          "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz";,
-          "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
-          "dev": true,
-          "requires": {
-            "abbrev": "1.1.1"
-          }
-        },
-        "rimraf": {
-          "version": "2.2.8",
-          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";,
-          "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
-          "dev": true
-        },
-        "which": {
-          "version": "1.0.9",
-          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz";,
-          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
-          "dev": true
-        }
       }
     },
     "grunt-bump": {
@@ -2719,6 +2368,15 @@
           "requires": {
             "brace-expansion": "1.1.11"
           }
+        },
+        "nopt": {
+          "version": "3.0.6",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz";,
+          "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+          "dev": true,
+          "requires": {
+            "abbrev": "1.1.1"
+          }
         }
       }
     },
@@ -2731,15 +2389,15 @@
         "archiver": "1.3.0",
         "chalk": "1.1.3",
         "iltorb": "1.3.10",
-        "lodash": "4.17.5",
+        "lodash": "4.17.10",
         "pretty-bytes": "4.0.2",
         "stream-buffers": "2.2.0"
       },
       "dependencies": {
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         }
       }
@@ -2815,14 +2473,6 @@
         "lodash": "0.9.2",
         "underscore.string": "2.2.1",
         "which": "1.0.9"
-      },
-      "dependencies": {
-        "which": {
-          "version": "1.0.9",
-          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz";,
-          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
-          "dev": true
-        }
       }
     },
     "grunt-sass": {
@@ -2947,32 +2597,25 @@
       "dev": true
     },
     "http-errors": {
-      "version": "1.6.2",
-      "resolved": 
"https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz";,
-      "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
+      "version": "1.6.3",
+      "resolved": 
"https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz";,
+      "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
       "dev": true,
       "requires": {
-        "depd": "1.1.1",
+        "depd": "1.1.2",
         "inherits": "2.0.3",
-        "setprototypeof": "1.0.3",
+        "setprototypeof": "1.1.0",
         "statuses": "1.5.0"
-      },
-      "dependencies": {
-        "depd": {
-          "version": "1.1.1",
-          "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz";,
-          "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=",
-          "dev": true
-        }
       }
     },
     "http-proxy": {
-      "version": "1.16.2",
-      "resolved": 
"https://registry.npmjs.org/http-proxy/-/http-proxy-1.16.2.tgz";,
-      "integrity": "sha1-Bt/ykpUr9k2+hHH6nfcwZtTzd0I=",
+      "version": "1.17.0",
+      "resolved": 
"https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz";,
+      "integrity": 
"sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==",
       "dev": true,
       "requires": {
-        "eventemitter3": "1.2.0",
+        "eventemitter3": "3.0.1",
+        "follow-redirects": "1.4.1",
         "requires-port": "1.0.0"
       }
     },
@@ -3014,7 +2657,7 @@
         "detect-libc": "0.2.0",
         "nan": "2.10.0",
         "node-gyp": "3.6.2",
-        "prebuild-install": "2.5.1"
+        "prebuild-install": "2.5.3"
       }
     },
     "in-publish": {
@@ -3354,6 +2997,15 @@
             "brace-expansion": "1.1.11"
           }
         },
+        "nopt": {
+          "version": "3.0.6",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz";,
+          "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+          "dev": true,
+          "requires": {
+            "abbrev": "1.0.9"
+          }
+        },
         "supports-color": {
           "version": "3.2.3",
           "resolved": 
"https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz";,
@@ -3363,6 +3015,15 @@
             "has-flag": "1.0.0"
           }
         },
+        "which": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz";,
+          "integrity": 
"sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
+          "dev": true,
+          "requires": {
+            "isexe": "2.0.0"
+          }
+        },
         "wordwrap": {
           "version": "1.0.0",
           "resolved": 
"https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz";,
@@ -3504,13 +3165,13 @@
         "colors": "1.2.1",
         "combine-lists": "1.0.1",
         "connect": "3.6.6",
-        "core-js": "2.5.4",
+        "core-js": "2.5.5",
         "di": "0.0.1",
         "dom-serialize": "2.2.1",
         "expand-braces": "0.1.2",
         "glob": "7.1.2",
         "graceful-fs": "4.1.11",
-        "http-proxy": "1.16.2",
+        "http-proxy": "1.17.0",
         "isbinaryfile": "3.0.2",
         "lodash": "3.10.1",
         "log4js": "0.6.38",
@@ -3547,6 +3208,12 @@
             "path-is-absolute": "1.0.1"
           }
         },
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        },
         "lodash": {
           "version": "3.10.1",
           "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz";,
@@ -3562,6 +3229,15 @@
             "brace-expansion": "1.1.11"
           }
         },
+        "rimraf": {
+          "version": "2.6.2",
+          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz";,
+          "integrity": 
"sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
+          "dev": true,
+          "requires": {
+            "glob": "7.1.2"
+          }
+        },
         "source-map": {
           "version": "0.5.7",
           "resolved": 
"https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";,
@@ -3578,6 +3254,17 @@
       "requires": {
         "fs-access": "1.0.1",
         "which": "1.3.0"
+      },
+      "dependencies": {
+        "which": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz";,
+          "integrity": 
"sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
+          "dev": true,
+          "requires": {
+            "isexe": "2.0.0"
+          }
+        }
       }
     },
     "karma-cli": {
@@ -3689,7 +3376,7 @@
       "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
       "dev": true,
       "requires": {
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       }
     },
     "lcid": {
@@ -3734,6 +3421,14 @@
         "pify": "2.3.0",
         "pinkie-promise": "2.0.1",
         "strip-bom": "2.0.0"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        }
       }
     },
     "lodash": {
@@ -3912,9 +3607,9 @@
       "optional": true
     },
     "minimatch": {
-      "version": "0.3.0",
-      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz";,
-      "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
+      "version": "0.2.14",
+      "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz";,
+      "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
       "dev": true,
       "requires": {
         "lru-cache": "2.7.3",
@@ -3978,9 +3673,9 @@
       "dev": true
     },
     "node-abi": {
-      "version": "2.3.0",
-      "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.3.0.tgz";,
-      "integrity": 
"sha512-zwm6vU3SsVgw3e9fu48JBaRBCJGIvAgysDsqtf5+vEexFE71bEOtaMWb5zr/zODZNzTPtQlqUUpC79k68Hspow==",
+      "version": "2.4.0",
+      "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.4.0.tgz";,
+      "integrity": 
"sha512-hRUz0vG+eJfSqwU6rOgW6wNyX85ec8OEE9n4A+u+eoiE8oTePhCkUFTNmwQ+86Kyu429PCLNNyI2P2jL9qKXhw==",
       "dev": true,
       "optional": true,
       "requires": {
@@ -4002,10 +3697,10 @@
         "npmlog": "4.1.2",
         "osenv": "0.1.5",
         "request": "2.85.0",
-        "rimraf": "2.6.2",
+        "rimraf": "2.2.8",
         "semver": "5.3.0",
         "tar": "2.2.1",
-        "which": "1.3.0"
+        "which": "1.0.9"
       },
       "dependencies": {
         "glob": {
@@ -4022,6 +3717,12 @@
             "path-is-absolute": "1.0.1"
           }
         },
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        },
         "minimatch": {
           "version": "3.0.4",
           "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";,
@@ -4031,6 +3732,15 @@
             "brace-expansion": "1.1.11"
           }
         },
+        "nopt": {
+          "version": "3.0.6",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz";,
+          "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+          "dev": true,
+          "requires": {
+            "abbrev": "1.1.1"
+          }
+        },
         "semver": {
           "version": "5.3.0",
           "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz";,
@@ -4190,7 +3900,7 @@
           "dev": true,
           "requires": {
             "aws-sign2": "0.6.0",
-            "aws4": "1.6.0",
+            "aws4": "1.7.0",
             "caseless": "0.11.0",
             "combined-stream": "1.0.6",
             "extend": "3.0.1",
@@ -4236,9 +3946,9 @@
       "optional": true
     },
     "nopt": {
-      "version": "3.0.6",
-      "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz";,
-      "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+      "version": "1.0.10",
+      "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz";,
+      "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
       "dev": true,
       "requires": {
         "abbrev": "1.1.1"
@@ -4494,6 +4204,14 @@
         "graceful-fs": "4.1.11",
         "pify": "2.3.0",
         "pinkie-promise": "2.0.1"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        }
       }
     },
     "performance-now": {
@@ -4533,9 +4251,9 @@
       }
     },
     "prebuild-install": {
-      "version": "2.5.1",
-      "resolved": 
"https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.5.1.tgz";,
-      "integrity": 
"sha512-3DX9L6pzwc1m1ksMkW3Ky2WLgPQUBiySOfXVl3WZyAeJSyJb4wtoH9OmeRGcubAWsMlLiL8BTHbwfm/jPQE9Ag==",
+      "version": "2.5.3",
+      "resolved": 
"https://registry.npmjs.org/prebuild-install/-/prebuild-install-2.5.3.tgz";,
+      "integrity": 
"sha512-/rI36cN2g7vDQnKWN8Uzupi++KjyqS9iS+/fpwG4Ea8d0Pip0PQ5bshUNzVwt+/D2MRfhVAplYMMvWLqWrCF/g==",
       "dev": true,
       "optional": true,
       "requires": {
@@ -4544,13 +4262,13 @@
         "github-from-package": "0.0.0",
         "minimist": "1.2.0",
         "mkdirp": "0.5.1",
-        "node-abi": "2.3.0",
+        "node-abi": "2.4.0",
         "noop-logger": "0.1.1",
         "npmlog": "4.1.2",
         "os-homedir": "1.0.2",
         "pump": "2.0.1",
         "rc": "1.2.6",
-        "simple-get": "2.7.0",
+        "simple-get": "2.8.1",
         "tar-fs": "1.16.0",
         "tunnel-agent": "0.6.0",
         "which-pm-runs": "1.0.0"
@@ -4603,7 +4321,7 @@
       "dev": true,
       "requires": {
         "@types/jasmine": "2.8.6",
-        "@types/node": "6.0.103",
+        "@types/node": "6.0.106",
         "@types/q": "0.0.32",
         "@types/selenium-webdriver": "2.53.37",
         "adm-zip": "0.4.7",
@@ -4648,6 +4366,15 @@
           "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
           "dev": true
         },
+        "rimraf": {
+          "version": "2.6.2",
+          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz";,
+          "integrity": 
"sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
+          "dev": true,
+          "requires": {
+            "glob": "7.1.2"
+          }
+        },
         "webdriver-manager": {
           "version": "10.3.0",
           "resolved": 
"https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-10.3.0.tgz";,
@@ -4768,11 +4495,35 @@
         "unpipe": "1.0.0"
       },
       "dependencies": {
+        "depd": {
+          "version": "1.1.1",
+          "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz";,
+          "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=",
+          "dev": true
+        },
+        "http-errors": {
+          "version": "1.6.2",
+          "resolved": 
"https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz";,
+          "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=",
+          "dev": true,
+          "requires": {
+            "depd": "1.1.1",
+            "inherits": "2.0.3",
+            "setprototypeof": "1.0.3",
+            "statuses": "1.5.0"
+          }
+        },
         "iconv-lite": {
           "version": "0.4.19",
           "resolved": 
"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz";,
           "integrity": 
"sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
           "dev": true
+        },
+        "setprototypeof": {
+          "version": "1.0.3",
+          "resolved": 
"https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz";,
+          "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=",
+          "dev": true
         }
       }
     },
@@ -4820,9 +4571,9 @@
       }
     },
     "readable-stream": {
-      "version": "2.3.5",
-      "resolved": 
"https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.5.tgz";,
-      "integrity": 
"sha512-tK0yDhrkygt/knjowCUiWP9YdV7c5R+8cR0r/kt9ZhBU906Fs6RpQJCEilamRJj1Nx2rWI6LkW9gKqjTkshhEw==",
+      "version": "2.3.6",
+      "resolved": 
"https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz";,
+      "integrity": 
"sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
       "dev": true,
       "requires": {
         "core-util-is": "1.0.2",
@@ -4830,7 +4581,7 @@
         "isarray": "1.0.0",
         "process-nextick-args": "2.0.0",
         "safe-buffer": "5.1.1",
-        "string_decoder": "1.0.3",
+        "string_decoder": "1.1.1",
         "util-deprecate": "1.0.2"
       }
     },
@@ -4842,10 +4593,16 @@
       "requires": {
         "graceful-fs": "4.1.11",
         "minimatch": "3.0.4",
-        "readable-stream": "2.3.5",
+        "readable-stream": "2.3.6",
         "set-immediate-shim": "1.0.1"
       },
       "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": 
"https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz";,
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        },
         "minimatch": {
           "version": "3.0.4",
           "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";,
@@ -4910,7 +4667,7 @@
       "dev": true,
       "requires": {
         "aws-sign2": "0.7.0",
-        "aws4": "1.6.0",
+        "aws4": "1.7.0",
         "caseless": "0.12.0",
         "combined-stream": "1.0.6",
         "extend": "3.0.1",
@@ -4983,38 +4740,10 @@
       }
     },
     "rimraf": {
-      "version": "2.6.2",
-      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz";,
-      "integrity": 
"sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
-      "dev": true,
-      "requires": {
-        "glob": "7.1.2"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz";,
-          "integrity": 
"sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": 
"https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";,
-          "integrity": 
"sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
+      "version": "2.2.8",
+      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz";,
+      "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
+      "dev": true
     },
     "roboto-fontface": {
       "version": "0.7.0",
@@ -5022,11 +4751,11 @@
       "integrity": "sha1-LzZGTlyZNT6EJ/VfH8p74aikF9k="
     },
     "rxjs": {
-      "version": "5.4.3",
-      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.4.3.tgz";,
-      "integrity": 
"sha512-fSNi+y+P9ss+EZuV0GcIIqPUK07DEaMRUtLJvdcvMyFjc9dizuDjere+A4V7JrLGnm9iCc+nagV/4QdMTkqC4A==",
+      "version": "5.5.6",
+      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.6.tgz";,
+      "integrity": 
"sha512-v4Q5HDC0FHAQ7zcBX7T2IL6O5ltl1a2GX4ENjPXg6SjDY69Cmx9v4113C99a4wGF16ClPv5Z8mghuYorVkg/kg==",
       "requires": {
-        "symbol-observable": "1.2.0"
+        "symbol-observable": "1.0.1"
       }
     },
     "safe-buffer": {
@@ -5042,7 +4771,7 @@
       "dev": true,
       "requires": {
         "glob": "7.1.2",
-        "lodash": "4.17.5",
+        "lodash": "4.17.10",
         "scss-tokenizer": "0.2.3",
         "yargs": "7.1.0"
       },
@@ -5062,9 +4791,9 @@
           }
         },
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         },
         "minimatch": {
@@ -5110,7 +4839,7 @@
       "dev": true,
       "requires": {
         "adm-zip": "0.4.4",
-        "rimraf": "2.6.2",
+        "rimraf": "2.2.8",
         "tmp": "0.0.24",
         "ws": "1.1.2",
         "xml2js": "0.4.4"
@@ -5149,9 +4878,9 @@
       "dev": true
     },
     "setprototypeof": {
-      "version": "1.0.3",
-      "resolved": 
"https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz";,
-      "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=",
+      "version": "1.1.0",
+      "resolved": 
"https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz";,
+      "integrity": 
"sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
       "dev": true
     },
     "sigmund": {
@@ -5174,9 +4903,9 @@
       "optional": true
     },
     "simple-get": {
-      "version": "2.7.0",
-      "resolved": 
"https://registry.npmjs.org/simple-get/-/simple-get-2.7.0.tgz";,
-      "integrity": 
"sha512-RkE9rGPHcxYZ/baYmgJtOSM63vH0Vyq+ma5TijBcLla41SWlh8t6XYIGMR/oeZcmr+/G8k+zrClkkVrtnQ0esg==",
+      "version": "2.8.1",
+      "resolved": 
"https://registry.npmjs.org/simple-get/-/simple-get-2.8.1.tgz";,
+      "integrity": 
"sha512-lSSHRSw3mQNUGPAYRqo7xy9dhKmxFXIjLjp4KHpf99GEH2VH7C3AM+Qfx6du6jhfUi6Vm7XnbEVEf7Wb6N8jRw==",
       "dev": true,
       "optional": true,
       "requires": {
@@ -5428,7 +5157,7 @@
       "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
       "dev": true,
       "requires": {
-        "readable-stream": "2.3.5"
+        "readable-stream": "2.3.6"
       }
     },
     "stream-buffers": {
@@ -5449,9 +5178,9 @@
       }
     },
     "string_decoder": {
-      "version": "1.0.3",
-      "resolved": 
"https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz";,
-      "integrity": 
"sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
+      "version": "1.1.1",
+      "resolved": 
"https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz";,
+      "integrity": 
"sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
       "dev": true,
       "requires": {
         "safe-buffer": "5.1.1"
@@ -5504,9 +5233,9 @@
       "dev": true
     },
     "symbol-observable": {
-      "version": "1.2.0",
-      "resolved": 
"https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz";,
-      "integrity": 
"sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ=="
+      "version": "1.0.1",
+      "resolved": 
"https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz";,
+      "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ="
     },
     "systemjs": {
       "version": "0.20.17",
@@ -5563,7 +5292,7 @@
       "requires": {
         "bl": "1.2.2",
         "end-of-stream": "1.4.1",
-        "readable-stream": "2.3.5",
+        "readable-stream": "2.3.6",
         "xtend": "4.0.1"
       }
     },
@@ -5835,13 +5564,10 @@
       "dev": true
     },
     "which": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz";,
-      "integrity": 
"sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
-      "dev": true,
-      "requires": {
-        "isexe": "2.0.0"
-      }
+      "version": "1.0.9",
+      "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz";,
+      "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
+      "dev": true
     },
     "which-module": {
       "version": "1.0.0",
@@ -6010,22 +5736,22 @@
       "requires": {
         "archiver-utils": "1.3.0",
         "compress-commons": "1.2.2",
-        "lodash": "4.17.5",
-        "readable-stream": "2.3.5"
+        "lodash": "4.17.10",
+        "readable-stream": "2.3.6"
       },
       "dependencies": {
         "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz";,
-          "integrity": 
"sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz";,
+          "integrity": 
"sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         }
       }
     },
     "zone.js": {
-      "version": "0.8.7",
-      "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.7.tgz";,
-      "integrity": "sha1-FMNguWL/hu/E9QfzRCg5HrGyj7k="
+      "version": "0.8.17",
+      "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.17.tgz";,
+      "integrity": "sha1-TF5RhahX2o2nk9rzkZNxxaNrKgs="
     }
   }
 }

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index b1738a1..aed8a48 100644
--- a/package.json
+++ b/package.json
@@ -1,8 +1,15 @@
 {
   "name": "nifi-fds",
-  "version": "0.0.1",
+  "version": "0.0.0",
   "scripts": {
-    "build": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
+    "start": "./node_modules/http-server/bin/http-server .",
+    "build:demo-app": "./node_modules/grunt-cli/bin/grunt 
compile-fds-demo-styles",
+    "build:platform": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
+    "clean:install": "bash ./scripts/clean-install",
+    "clean:install:skipTests": "bash ./scripts/clean-install-skipTests",
+    "dev:install": "bash ./scripts/dev-install",
+    "dev:install:skipTests": "bash ./scripts/dev-install-skipTests",
+    "deploy:ghpages": "bash ./scripts/deploy-gh-pages",
     "test": "./node_modules/protractor/bin/webdriver-manager update --gecko 
false && karma start karma.conf.js --single-run",
     "test:dev": "./node_modules/protractor/bin/webdriver-manager update 
--gecko false && karma start karma.conf.js"
   },
@@ -24,37 +31,38 @@
   "bugs": {
     "url": "https://github.com/apache/nifi-fds/issues";
   },
-  "license": "Apache License, Version 2.0",
-  "author": "Scott Aslan",
-  "contributors": [
-    "Scott Aslan <[email protected]>"
-  ],
+  "license": "Apache-2.0",
   "dependencies": {
     "jquery": "3.2.1",
-    "rxjs": "5.4.3",
+    "rxjs": "5.5.6",
     "systemjs": "0.20.17",
     "systemjs-plugin-text": "0.0.11",
-    "zone.js": "0.8.7",
-    "@angular/animations": "4.4.6",
-    "@angular/cdk": "2.0.0-beta.12",
-    "@angular/common": "4.4.6",
-    "@angular/compiler": "4.4.6",
-    "@angular/core": "4.4.6",
-    "@angular/flex-layout": "2.0.0-beta.9",
-    "@angular/forms": "4.4.6",
-    "@angular/http": "4.4.6",
-    "@angular/material": "2.0.0-beta.12",
-    "@angular/platform-browser": "4.4.6",
-    "@angular/platform-browser-dynamic": "4.4.6",
-    "@angular/router": "4.4.6",
+    "zone.js": "0.8.17",
+    "@angular/animations": "5.2.0",
+    "@angular/cdk": "5.2.0",
+    "@angular/common": "5.2.0",
+    "@angular/compiler": "5.2.0",
+    "@angular/core": "5.2.0",
+    "@angular/flex-layout": "5.0.0-beta.14",
+    "@angular/forms": "5.2.0",
+    "@angular/http": "5.2.0",
+    "@angular/material": "5.2.0",
+    "@angular/platform-browser": "5.2.0",
+    "@angular/platform-browser-dynamic": "5.2.0",
+    "@angular/router": "5.2.0",
+    "@covalent/core": "1.0.0",
+    "detect-libc": "1.0.3",
+    "font-awesome": "4.7.0",
+    "hammerjs": "2.0.8",
     "roboto-fontface": "0.7.0"
   },
   "devDependencies": {
     "grunt": "0.4.5",
-    "grunt-bump": "^0.8.0",
+    "grunt-bump": "0.8.0",
     "grunt-cli": "1.2.0",
     "grunt-contrib-compress": "1.4.3",
     "grunt-sass": "2.0.0",
+    "http-server": "0.11.1",
     "jasmine-core": "2.8.0",
     "karma": "1.7.1",
     "karma-chrome-launcher": "2.2.0",

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/platform/core/common/fds-common.module.js
----------------------------------------------------------------------
diff --git a/platform/core/common/fds-common.module.js 
b/platform/core/common/fds-common.module.js
deleted file mode 100644
index 32b5512..0000000
--- a/platform/core/common/fds-common.module.js
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-var ngCore = require('@angular/core');
-var fdsStorageServiceModule = require('@fluid-design-system/storage-service');
-
-/**
- * FdsCommonsModule constructor.
- *
- * @constructor
- */
-function FdsCommonsModule() {
-
-};
-
-FdsCommonsModule.prototype = {
-    constructor: FdsCommonsModule
-};
-
-FdsCommonsModule.annotations = [
-    new ngCore.NgModule({
-        imports: [],
-        declarations: [],
-        exports: [],
-        providers: [
-            fdsStorageServiceModule.FdsStorageService
-        ]
-    })
-];
-
-module.exports = {
-    FdsCommonsModule: FdsCommonsModule,
-    FdsStorageService: fdsStorageServiceModule.FdsStorageService
-};

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/platform/core/common/fds.animations.js
----------------------------------------------------------------------
diff --git a/platform/core/common/fds.animations.js 
b/platform/core/common/fds.animations.js
deleted file mode 100644
index 90cb660..0000000
--- a/platform/core/common/fds.animations.js
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-var ngAnimate = require('@angular/animations');
-
-/**
- * FdsAnimations constructor.
- *
- * @constructor
- */
-function FdsAnimations() {
-};
-
-FdsAnimations.prototype = {
-    constructor: FdsAnimations,
-
-    /**
-     * Fade animation
-     */
-    fadeAnimation: ngAnimate.trigger('routeAnimation', [
-        ngAnimate.state('*',
-            ngAnimate.style({
-                opacity: 1
-            })
-        ),
-        ngAnimate.transition(':enter', [
-            ngAnimate.style({
-                opacity: 0
-            }),
-            ngAnimate.animate('0.5s ease-in')
-        ]),
-        ngAnimate.transition(':leave', [
-            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
-                opacity: 0
-            }))
-        ])
-    ]),
-
-    /**
-     * Slide in from the left animation
-     */
-    slideInLeftAnimation: ngAnimate.trigger('routeAnimation', [
-        ngAnimate.state('*',
-            ngAnimate.style({
-                opacity: 1,
-                transform: 'translateX(0)'
-            })
-        ),
-        ngAnimate.transition(':enter', [
-            ngAnimate.style({
-                opacity: 0,
-                transform: 'translateX(-100%)'
-            }),
-            ngAnimate.animate('0.5s ease-in')
-        ]),
-        ngAnimate.transition(':leave', [
-            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
-                opacity: 0,
-                transform: 'translateX(100%)'
-            }))
-        ])
-    ]),
-
-    /**
-     * Slide in from the top animation
-     */
-    slideInDownAnimation: ngAnimate.trigger('routeAnimation', [
-        ngAnimate.state('*',
-            ngAnimate.style({
-                opacity: 1,
-                transform: 'translateY(0)'
-            })
-        ),
-        ngAnimate.transition(':enter', [
-            ngAnimate.style({
-                opacity: 0,
-                transform: 'translateY(-100%)'
-            }),
-            ngAnimate.animate('0.5s ease-in')
-        ]),
-        ngAnimate.transition(':leave', [
-            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
-                opacity: 0,
-                transform: 'translateY(100%)'
-            }))
-        ])
-    ]),
-
-    /**
-     * Fly in/out animation
-     */
-    flyInOutAnimation: ngAnimate.trigger('flyInOut', [
-        ngAnimate.state('in',
-            ngAnimate.style({transform: 'translateX(0)'})
-        ),
-        ngAnimate.transition('void => *', [
-            ngAnimate.style({transform: 'translateX(100%)'}),
-            ngAnimate.animate('0.4s 0.1s ease-in')
-        ]),
-        ngAnimate.transition('* => void', ngAnimate.animate('0.2s ease-out', 
ngAnimate.style({transform: 'translateX(-100%)'})))
-    ]),
-
-    /**
-     * Fly in/out animation
-     */
-    fadeInOutAnimation: ngAnimate.trigger('fadeInOut', [
-        ngAnimate.state('in',
-            ngAnimate.style({opacity: 1})
-        ),
-        ngAnimate.transition('void => *', [
-            ngAnimate.style({opacity: 0}),
-            ngAnimate.animate('0.5s 0.1s ease-in')
-        ]),
-        ngAnimate.transition('* => void', ngAnimate.animate('0.5s ease-out', 
ngAnimate.style({opacity: 0})))
-    ])
-
-};
-
-module.exports = new FdsAnimations();

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/platform/core/common/services/fds-storage.service.js
----------------------------------------------------------------------
diff --git a/platform/core/common/services/fds-storage.service.js 
b/platform/core/common/services/fds-storage.service.js
deleted file mode 100644
index 8dff679..0000000
--- a/platform/core/common/services/fds-storage.service.js
+++ /dev/null
@@ -1,219 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// Store items for two days before being eligible for removal.
-var MILLIS_PER_DAY = 86400000;
-var TWO_DAYS = MILLIS_PER_DAY * 2;
-
-var isUndefined = function (obj) {
-    return typeof obj === 'undefined';
-};
-
-var isNull = function (obj) {
-    return obj === null;
-};
-
-var isDefinedAndNotNull = function (obj) {
-    return !isUndefined(obj) && !isNull(obj);
-};
-
-/**
- * Checks the expiration for the specified entry.
- *
- * @param {object} entry
- * @returns {boolean}
- */
-var checkExpiration = function (entry) {
-    if (isDefinedAndNotNull(entry.expires)) {
-        // get the expiration
-        var expires = new Date(entry.expires);
-        var now = new Date();
-
-        // return whether the expiration date has passed
-        return expires.valueOf() < now.valueOf();
-    } else {
-        return false;
-    }
-};
-
-/**
- * Gets an enty for the key. The entry expiration is not checked.
- *
- * @param {string} key
- */
-var getEntry = function (key) {
-    try {
-        // parse the entry
-        var entry = JSON.parse(localStorage.getItem(key));
-
-        // ensure the entry and item are present
-        if (isDefinedAndNotNull(entry)) {
-            return entry;
-        } else {
-            return null;
-        }
-    } catch (e) {
-        return null;
-    }
-};
-
-/**
- * FdsStorageService constructor.
- * @constructor
- */
-function FdsStorageService() {
-};
-
-FdsStorageService.prototype = {
-    constructor: FdsStorageService,
-    /**
-     * Initializes the storage. Items will be persisted for two days. Once the 
scripts runs
-     * thereafter, all eligible items will be removed. This strategy does not 
support persistence.
-     */
-    init: function () {
-        for (var i = 0; i < localStorage.length; i++) {
-            try {
-                // get the next item
-                var key = localStorage.key(i);
-
-                // attempt to get the item which will expire if necessary
-                this.getItem(key);
-            } catch (e) {
-            }
-        }
-    },
-
-    /**
-     * Stores the specified item.
-     *
-     * @param {string} key
-     * @param {object} item
-     * @param {integer} expires
-     */
-    setItem: function (key, item, expires) {
-        // calculate the expiration
-        expires = isDefinedAndNotNull(expires) ? expires : new 
Date().valueOf() + TWO_DAYS;
-
-        // create the entry
-        var entry = {
-            expires: expires,
-            item: item
-        };
-
-        // store the item
-        localStorage.setItem(key, JSON.stringify(entry));
-    },
-
-    /**
-     * Returns whether there is an entry for this key. This will not check the 
expiration. If
-     * the entry is expired, it will return null on a subsequent getItem 
invocation.
-     *
-     * @param {string} key
-     * @returns {boolean}
-     */
-    hasItem: function (key) {
-        return getEntry(key) !== null;
-    },
-
-    /**
-     * Gets the item with the specified key. If an item with this key does
-     * not exist, null is returned. If an item exists but cannot be parsed
-     * or is malformed/unrecognized, null is returned.
-     *
-     * @param {type} key
-     */
-    getItem: function (key) {
-        var entry = getEntry(key);
-        if (entry === null) {
-            return null;
-        }
-
-        // if the entry is expired, drop it and return null
-        if (checkExpiration(entry)) {
-            this.removeItem(key);
-            return null;
-        }
-
-        // if the entry has the specified field return its value
-        if (isDefinedAndNotNull(entry['item'])) {
-            return entry['item'];
-        } else {
-            return null;
-        }
-    },
-
-    /**
-     * Gets the expiration for the specified item. This will not check the 
expiration. If
-     * the entry is expired, it will return null on a subsequent getItem 
invocation.
-     *
-     * @param {string} key
-     * @returns {integer}
-     */
-    getItemExpiration: function (key) {
-        var entry = getEntry(key);
-        if (entry === null) {
-            return null;
-        }
-
-        // if the entry has the specified field return its value
-        if (isDefinedAndNotNull(entry['expires'])) {
-            return entry['expires'];
-        } else {
-            return null;
-        }
-    },
-
-    /**
-     * Extracts the subject from the specified jwt. If the jwt is not as 
expected
-     * an empty string is returned.
-     *
-     * @param {string} jwt
-     * @returns {string}
-     */
-    getJwtPayload: function (jwt) {
-        if (isDefinedAndNotNull(jwt)) {
-            var segments = jwt.split(/\./);
-            if (segments.length !== 3) {
-                return '';
-            }
-
-            var rawPayload = window.atob(segments[1]);
-            var payload = JSON.parse(rawPayload);
-
-            if (isDefinedAndNotNull(payload)) {
-                return payload;
-            } else {
-                return null;
-            }
-        }
-
-        return null;
-    },
-
-    /**
-     * Removes the item with the specified key.
-     *
-     * @param {type} key
-     */
-    removeItem: function (key) {
-        localStorage.removeItem(key);
-    }
-};
-
-FdsStorageService.parameters = [];
-
-module.exports = FdsStorageService;
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/c85638d8/platform/core/common/services/fds-storage.service.spec.js
----------------------------------------------------------------------
diff --git a/platform/core/common/services/fds-storage.service.spec.js 
b/platform/core/common/services/fds-storage.service.spec.js
deleted file mode 100644
index f990af1..0000000
--- a/platform/core/common/services/fds-storage.service.spec.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-var FdsStorageService = require('@fluid-design-system/common/storage-service');
-
-describe('FdsStorageService isolated unit tests', function () {
-    var fdsStorage;
-
-    beforeEach(function () {
-        fdsStorage = new FdsStorageService();
-    });
-
-    it('should set, retrieve, and remove an item from local storage.', 
function () {
-        fdsStorage.init();
-
-        var jwt = 
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ';
-        var expiration;
-        var item;
-
-        if (!fdsStorage.hasItem('jwt')) {
-            fdsStorage.setItem('jwt', jwt);
-            item = fdsStorage.getItem('jwt');
-
-            //assertions
-            
expect(item).toBe('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ');
-
-            var payload = fdsStorage.getItemExpiration('jwt');
-
-            fdsStorage.removeItem('jwt');
-            item = fdsStorage.getItem('jwt');
-
-            //assertions
-            expect(item).toBe(null);
-        }
-    });
-
-    it('should get jet payload.', function () {
-
-        var jwt = 
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ';
-
-        var payload = fdsStorage.getJwtPayload(jwt);
-
-        //assertions
-        expect(payload).toBeDefined();
-        expect(payload.sub).toBe('1234567890');
-    });
-});

Reply via email to