Tests

Added tests and coverage report.

NPM Scripts: `npm test` & `npm run coverage`