diff --git a/node_modules/parse-filepath/LICENSE b/node_modules/parse-filepath/LICENSE
new file mode 100644
index 0000000..fa30c4c
--- /dev/null
+++ b/node_modules/parse-filepath/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014-2015, 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/parse-filepath/README.md b/node_modules/parse-filepath/README.md
new file mode 100644
index 0000000..3eb7ce5
--- /dev/null
+++ b/node_modules/parse-filepath/README.md
@@ -0,0 +1,111 @@
+# parse-filepath [![NPM version](https://img.shields.io/npm/v/parse-filepath.svg?style=flat)](https://www.npmjs.com/package/parse-filepath) [![NPM downloads](https://img.shields.io/npm/dm/parse-filepath.svg?style=flat)](https://npmjs.org/package/parse-filepath) [![Build Status](https://img.shields.io/travis/jonschlinkert/parse-filepath.svg?style=flat)](https://travis-ci.org/jonschlinkert/parse-filepath)
+
+> Pollyfill for node.js `path.parse`, parses a filepath into an object.
+
+You might also be interested in [global-prefix](https://github.com/jonschlinkert/global-prefix).
+
+## Install
+
+Install with [npm](https://www.npmjs.com/):
+
+```sh
+$ npm install parse-filepath --save
+```
+
+## Usage
+
+```js
+var parsePath = require('parse-filepath');
+parsePath(filepath);
+```
+
+This can be used as a polyfill for the native node.js `path.parse()` method, and it also adds a few properties:
+
+* `path`: the original filepath
+* `isAbsolute`: (getter) true if the given path is absolute
+* `absolute`: (getter) fully resolved, absolute filepath
+* `dirname`: alias for `dir`
+* `basename`: alias for `base`
+* `extname`: alias for `ext`
+* `stem`: alias for `name`
+
+**Example**
+
+```js
+var parsePath = require('parse-filepath');
+console.log(parsePath('foo/bar/baz/index.js'));
+```
+
+Returns:
+
+```js
+{ root: '',
+  dir: 'foo/bar/baz',
+  base: 'index.js',
+  ext: '.js',
+  name: 'index',
+
+  // aliases
+  extname: '.js',
+  basename: 'index.js',
+  dirname: 'foo/bar/baz',
+  stem: 'index',
+
+  // original path
+  path: 'foo/bar/baz/index.js',
+
+  // getters
+  absolute: [Getter/Setter],
+  isAbsolute: [Getter/Setter] }
+```
+
+## Related projects
+
+You might also be interested in these projects:
+
+* [global-prefix](https://www.npmjs.com/package/global-prefix): Get the npm global path prefix. | [homepage](https://github.com/jonschlinkert/global-prefix)
+* [is-absolute](https://www.npmjs.com/package/is-absolute): Polyfill for node.js `path.isAbolute`. Returns true if a file path is absolute. | [homepage](https://github.com/jonschlinkert/is-absolute)
+* [is-relative](https://www.npmjs.com/package/is-relative): Returns `true` if the path appears to be relative. | [homepage](https://github.com/jonschlinkert/is-relative)
+* [relative](https://www.npmjs.com/package/relative): Get the relative filepath from path A to path B. Calculates from file-to-directory, file-to-file, directory-to-file,… [more](https://www.npmjs.com/package/relative) | [homepage](https://github.com/jonschlinkert/relative)
+
+## Contributing
+
+Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/parse-filepath/issues/new).
+
+## Building docs
+
+Generate readme and API documentation with [verb](https://github.com/verbose/verb):
+
+```sh
+$ npm install verb && npm run docs
+```
+
+Or, if [verb](https://github.com/verbose/verb) is installed globally:
+
+```sh
+$ verb
+```
+
+## Running tests
+
+Install dev dependencies:
+
+```sh
+$ npm install -d && npm test
+```
+
+## Author
+
+**Jon Schlinkert**
+
+* [github/jonschlinkert](https://github.com/jonschlinkert)
+* [twitter/jonschlinkert](http://twitter.com/jonschlinkert)
+
+## License
+
+Copyright © 2016, [Jon Schlinkert](https://github.com/jonschlinkert).
+Released under the [MIT license](https://github.com/jonschlinkert/parse-filepath/blob/master/LICENSE).
+
+***
+
+_This file was generated by [verb](https://github.com/verbose/verb), v, on March 29, 2016._
\ No newline at end of file
diff --git a/node_modules/parse-filepath/index.js b/node_modules/parse-filepath/index.js
new file mode 100644
index 0000000..0df0170
--- /dev/null
+++ b/node_modules/parse-filepath/index.js
@@ -0,0 +1,95 @@
+'use strict';
+
+var path = require('path');
+var isAbsolute = require('is-absolute');
+var pathRoot = require('path-root');
+var MapCache = require('map-cache');
+var cache = new MapCache();
+
+module.exports = function(filepath) {
+  if (typeof filepath !== 'string') {
+    throw new TypeError('parse-filepath expects a string');
+  }
+
+  if (cache.has(filepath)) {
+    return cache.get(filepath);
+  }
+
+  var obj = {};
+  if (typeof path.parse === 'function') {
+    obj = path.parse(filepath);
+    obj.extname = obj.ext;
+    obj.basename = obj.base;
+    obj.dirname = obj.dir;
+    obj.stem = obj.name;
+
+  } else {
+    define(obj, 'root', function() {
+      return pathRoot(this.path);
+    });
+
+    define(obj, 'extname', function() {
+      return path.extname(filepath);
+    });
+
+    define(obj, 'ext', function() {
+      return this.extname;
+    });
+
+    define(obj, 'name', function() {
+      return path.basename(filepath, this.ext);
+    });
+
+    define(obj, 'stem', function() {
+      return this.name;
+    });
+
+    define(obj, 'base', function() {
+      return this.name + this.ext;
+    });
+
+    define(obj, 'basename', function() {
+      return this.base;
+    });
+
+    define(obj, 'dir', function() {
+      var dir = path.dirname(filepath);
+      if (dir === '.') {
+        return (filepath[0] === '.') ? dir : '';
+      } else {
+        return dir;
+      }
+    });
+
+    define(obj, 'dirname', function() {
+      return this.dir;
+    });
+  }
+
+  obj.path = filepath;
+
+  define(obj, 'absolute', function() {
+    return path.resolve(this.path);
+  });
+
+  define(obj, 'isAbsolute', function() {
+    return isAbsolute(this.path);
+  });
+
+  cache.set(filepath, obj);
+  return obj;
+};
+
+function define(obj, prop, fn) {
+  var cached;
+  Object.defineProperty(obj, prop, {
+    configurable: true,
+    enumerable: true,
+    set: function(val) {
+      cached = val;
+    },
+    get: function() {
+      return cached || (cached = fn.call(obj));
+    }
+  });
+}
diff --git a/node_modules/parse-filepath/package.json b/node_modules/parse-filepath/package.json
new file mode 100644
index 0000000..ec97263
--- /dev/null
+++ b/node_modules/parse-filepath/package.json
@@ -0,0 +1,110 @@
+{
+  "_from": "parse-filepath@^1.0.1",
+  "_id": "parse-filepath@1.0.2",
+  "_inBundle": false,
+  "_integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
+  "_location": "/parse-filepath",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "parse-filepath@^1.0.1",
+    "name": "parse-filepath",
+    "escapedName": "parse-filepath",
+    "rawSpec": "^1.0.1",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.1"
+  },
+  "_requiredBy": [
+    "/fined"
+  ],
+  "_resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
+  "_shasum": "a632127f53aaf3d15876f5872f3ffac763d6c891",
+  "_spec": "parse-filepath@^1.0.1",
+  "_where": "C:\\Users\\marcr\\Desktop\\KorAp\\Git\\Kalamar\\node_modules\\fined",
+  "author": {
+    "name": "Jon Schlinkert",
+    "url": "https://github.com/jonschlinkert"
+  },
+  "bugs": {
+    "url": "https://github.com/jonschlinkert/parse-filepath/issues"
+  },
+  "bundleDependencies": false,
+  "dependencies": {
+    "is-absolute": "^1.0.0",
+    "map-cache": "^0.2.0",
+    "path-root": "^0.1.1"
+  },
+  "deprecated": false,
+  "description": "Pollyfill for node.js `path.parse`, parses a filepath into an object.",
+  "devDependencies": {
+    "gulp-format-md": "^0.1.7",
+    "mocha": "^2.2.5",
+    "should": "^7.0.2"
+  },
+  "engines": {
+    "node": ">=0.8"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/jonschlinkert/parse-filepath",
+  "keywords": [
+    "absolute",
+    "basename",
+    "dir",
+    "directory",
+    "dirname",
+    "ext",
+    "extension",
+    "extname",
+    "file",
+    "filename",
+    "filepath",
+    "is-absolute",
+    "name",
+    "object",
+    "parse",
+    "parser",
+    "parts",
+    "path",
+    "segment"
+  ],
+  "license": "MIT",
+  "main": "index.js",
+  "name": "parse-filepath",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/jonschlinkert/parse-filepath.git"
+  },
+  "scripts": {
+    "test": "mocha"
+  },
+  "verb": {
+    "run": true,
+    "toc": false,
+    "layout": "default",
+    "tasks": [
+      "readme"
+    ],
+    "plugins": [
+      "gulp-format-md"
+    ],
+    "related": {
+      "highlight": "global-prefix",
+      "list": [
+        "global-prefix",
+        "is-absolute",
+        "is-relative",
+        "relative"
+      ]
+    },
+    "reflinks": [
+      "verb"
+    ],
+    "lint": {
+      "reflinks": true
+    }
+  },
+  "version": "1.0.2"
+}
