v0.3.0
added generic currency check

Made sure that explicit currency declarations work

First detected currency will no longer be necessarily overwritten

If we were to leave max = 0 and there were multiple matches, then
no matter what else was in the matches array, the 0th element would
*never* be selected. This is because the length of any nonblank string
is greater than zero.

extracted best match finding to method

Moved find best match method

Added tests for ZAR