**DELETE ALL OF THIS TEXT BEFORE SUBMITTING**

Thanks for your contribution! Before submitting this pull request, make sure you're okay with your code
being put into the public domain. By submitting this pull request we will assume you're agreeing this.

In addition, please ensure you're respecting the goals of the project. Your pull request will be rejected
if you do any of the following:

  * Split your code into multiple files
  * Include a dependency on an external library
  * Include copyrighted code
  
Your pull request may still be rejected for other reasons to those listed above, but you will be informed
of the reasons.

Please base your branch off the `dev` branch.
