* very basics * add the version to get all matches * better exceptions, including tests * documentation and actually add the test code * responses to review