Implementation of "abc bank" and tests by Mark Howroyd

Submission of code via pull request.