Remember those credits - (Hopefully) fixes #1

This code is heavily inspired in functionality by code written by Jarl
Friis (@jarl-dk). I've refactored the code into this module and adopted
the use of promises instead of callbacks