All contributed code should conform to the following requirements:
- functional in style, preferably following the example of haskell
- written in a style similar to that of the rest of the library
- presented in accordance with the standard style
- checked with eslint
- fully tested using mocha and should
- fully covered, as shown in nyc/istanbul reports
- fully documented using jsdoc style, with all additions, deletions, and changes reported in CHANGELOG.md
- open source (including dependencies) on the same terms as the rest of this library