diff --git a/node_modules/map-visit/LICENSE b/node_modules/map-visit/LICENSE
new file mode 100644
index 0000000..83b56e7
--- /dev/null
+++ b/node_modules/map-visit/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2015-2017, Jon Schlinkert
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/node_modules/map-visit/README.md b/node_modules/map-visit/README.md
new file mode 100644
index 0000000..5ab02d4
--- /dev/null
+++ b/node_modules/map-visit/README.md
@@ -0,0 +1,155 @@
+# map-visit [![NPM version](https://img.shields.io/npm/v/map-visit.svg?style=flat)](https://www.npmjs.com/package/map-visit) [![NPM monthly downloads](https://img.shields.io/npm/dm/map-visit.svg?style=flat)](https://npmjs.org/package/map-visit)  [![NPM total downloads](https://img.shields.io/npm/dt/map-visit.svg?style=flat)](https://npmjs.org/package/map-visit) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/map-visit.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/map-visit)
+
+> Map `visit` over an array of objects.
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install --save map-visit
+```
+
+## Usage
+
+```js
+var mapVisit = require('map-visit');
+```
+
+## What does this do?
+
+**Assign/Merge/Extend vs. Visit**
+
+Let's say you want to add a `set` method to your application that will:
+
+* set key-value pairs on a `data` object
+* extend objects onto the `data` object
+* extend arrays of objects onto the data object
+
+**Example using `extend`**
+
+Here is one way to accomplish this using Lo-Dash's `extend` (comparable to `Object.assign`):
+
+```js
+var _ = require('lodash');
+
+var obj = {
+  data: {},
+  set: function (key, value) {
+    if (Array.isArray(key)) {
+      _.extend.apply(_, [obj.data].concat(key));
+    } else if (typeof key === 'object') {
+      _.extend(obj.data, key);
+    } else {
+      obj.data[key] = value;
+    }
+  }
+};
+
+obj.set('a', 'a');
+obj.set([{b: 'b'}, {c: 'c'}]);
+obj.set({d: {e: 'f'}});
+
+console.log(obj.data);
+//=> {a: 'a', b: 'b', c: 'c', d: { e: 'f' }}
+```
+
+The above approach works fine for most use cases. However, **if you also want to emit an event** each time a property is added to the `data` object, or you want more control over what happens as the object is extended, a better approach would be to use `visit`.
+
+**Example using `visit`**
+
+In this approach:
+
+* when an array is passed to `set`, the `mapVisit` library calls the `set` method on each object in the array.
+* when an object is passed, `visit` calls `set` on each property in the object.
+
+As a result, the `data` event will be emitted every time a property is added to `data` (events are just an example, you can use this approach to perform any necessary logic every time the method is called).
+
+```js
+var mapVisit = require('map-visit');
+var visit = require('object-visit');
+
+var obj = {
+  data: {},
+  set: function (key, value) {
+    if (Array.isArray(key)) {
+      mapVisit(obj, 'set', key);
+    } else if (typeof key === 'object') {
+      visit(obj, 'set', key);
+    } else {
+      // simulate an event-emitter
+      console.log('emit', key, value);
+      obj.data[key] = value;
+    }
+  }
+};
+
+obj.set('a', 'a');
+obj.set([{b: 'b'}, {c: 'c'}]);
+obj.set({d: {e: 'f'}});
+obj.set({g: 'h', i: 'j', k: 'l'});
+
+console.log(obj.data);
+//=> {a: 'a', b: 'b', c: 'c', d: { e: 'f' }, g: 'h', i: 'j', k: 'l'}
+
+// events would look something like:
+// emit a a
+// emit b b
+// emit c c
+// emit d { e: 'f' }
+// emit g h
+// emit i j
+// emit k l
+```
+
+## About
+
+### Related projects
+
+* [collection-visit](https://www.npmjs.com/package/collection-visit): Visit a method over the items in an object, or map visit over the objects… [more](https://github.com/jonschlinkert/collection-visit) | [homepage](https://github.com/jonschlinkert/collection-visit "Visit a method over the items in an object, or map visit over the objects in an array.")
+* [object-visit](https://www.npmjs.com/package/object-visit): Call a specified method on each value in the given object. | [homepage](https://github.com/jonschlinkert/object-visit "Call a specified method on each value in the given object.")
+
+### Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
+
+### Contributors
+
+| **Commits** | **Contributor** | 
+| --- | --- |
+| 15 | [jonschlinkert](https://github.com/jonschlinkert) |
+| 7 | [doowb](https://github.com/doowb) |
+
+### Building docs
+
+_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
+
+To generate the readme, run the following command:
+
+```sh
+$ npm install -g verbose/verb#dev verb-generate-readme && verb
+```
+
+### Running tests
+
+Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
+
+```sh
+$ npm install && npm test
+```
+
+### Author
+
+**Jon Schlinkert**
+
+* [github/jonschlinkert](https://github.com/jonschlinkert)
+* [twitter/jonschlinkert](https://twitter.com/jonschlinkert)
+
+### License
+
+Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT License](LICENSE).
+
+***
+
+_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.5.0, on April 09, 2017._
\ No newline at end of file
diff --git a/node_modules/map-visit/index.js b/node_modules/map-visit/index.js
new file mode 100644
index 0000000..bc54ccc
--- /dev/null
+++ b/node_modules/map-visit/index.js
@@ -0,0 +1,37 @@
+'use strict';
+
+var util = require('util');
+var visit = require('object-visit');
+
+/**
+ * Map `visit` over an array of objects.
+ *
+ * @param  {Object} `collection` The context in which to invoke `method`
+ * @param  {String} `method` Name of the method to call on `collection`
+ * @param  {Object} `arr` Array of objects.
+ */
+
+module.exports = function mapVisit(collection, method, val) {
+  if (isObject(val)) {
+    return visit.apply(null, arguments);
+  }
+
+  if (!Array.isArray(val)) {
+    throw new TypeError('expected an array: ' + util.inspect(val));
+  }
+
+  var args = [].slice.call(arguments, 3);
+
+  for (var i = 0; i < val.length; i++) {
+    var ele = val[i];
+    if (isObject(ele)) {
+      visit.apply(null, [collection, method, ele].concat(args));
+    } else {
+      collection[method].apply(collection, [ele].concat(args));
+    }
+  }
+};
+
+function isObject(val) {
+  return val && (typeof val === 'function' || (!Array.isArray(val) && typeof val === 'object'));
+}
diff --git a/node_modules/map-visit/package.json b/node_modules/map-visit/package.json
new file mode 100644
index 0000000..e3e421b
--- /dev/null
+++ b/node_modules/map-visit/package.json
@@ -0,0 +1,113 @@
+{
+  "_from": "map-visit@^1.0.0",
+  "_id": "map-visit@1.0.0",
+  "_inBundle": false,
+  "_integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+  "_location": "/map-visit",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "map-visit@^1.0.0",
+    "name": "map-visit",
+    "escapedName": "map-visit",
+    "rawSpec": "^1.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.0"
+  },
+  "_requiredBy": [
+    "/collection-visit"
+  ],
+  "_resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+  "_shasum": "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f",
+  "_spec": "map-visit@^1.0.0",
+  "_where": "C:\\Users\\marcr\\Desktop\\KorAp\\Git\\Kalamar\\node_modules\\collection-visit",
+  "author": {
+    "name": "Jon Schlinkert",
+    "url": "https://github.com/jonschlinkert"
+  },
+  "bugs": {
+    "url": "https://github.com/jonschlinkert/map-visit/issues"
+  },
+  "bundleDependencies": false,
+  "contributors": [
+    {
+      "name": "Brian Woodward",
+      "email": "brian.woodward@gmail.com",
+      "url": "https://twitter.com/doowb"
+    },
+    {
+      "name": "Jon Schlinkert",
+      "email": "jon.schlinkert@sellside.com",
+      "url": "http://twitter.com/jonschlinkert"
+    }
+  ],
+  "dependencies": {
+    "object-visit": "^1.0.0"
+  },
+  "deprecated": false,
+  "description": "Map `visit` over an array of objects.",
+  "devDependencies": {
+    "clone-deep": "^0.2.4",
+    "extend-shallow": "^2.0.1",
+    "gulp-format-md": "^0.1.12",
+    "lodash": "^4.17.4",
+    "mocha": "^3.2.0"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/jonschlinkert/map-visit",
+  "keywords": [
+    "array",
+    "arrays",
+    "function",
+    "helper",
+    "invoke",
+    "key",
+    "map",
+    "method",
+    "object",
+    "objects",
+    "value",
+    "visit",
+    "visitor"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "map-visit",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jonschlinkert/map-visit.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "verb": {
+    "toc": false,
+    "layout": "default",
+    "tasks": [
+      "readme"
+    ],
+    "plugins": [
+      "gulp-format-md"
+    ],
+    "lint": {
+      "reflinks": true
+    },
+    "related": {
+      "list": [
+        "collection-visit",
+        "object-visit"
+      ]
+    },
+    "reflinks": [
+      "verb",
+      "verb-generate-readme"
+    ]
+  },
+  "version": "1.0.0"
+}
