Abstract the allowed file types out of API

closes #1891
- Moves contentType and extension check to config
Sorts PSM authors alphabetically

fixes #4198
Merge pull request #4202 from iBotPeaches/issue_4198

Sorts PSM authors alphabetically
Merge pull request #4188 from halfdan/1891-move

Abstract the allowed file types out of API
Implements module tests

closes #2521
- Add new module tests
- Implements new `test-module` task to specifically run module tests
Merge pull request #4203 from halfdan/2521-module-test

Implements Ghost module tests