Wrap up parsing in a less opinionated fashion

This also makes the csv plugin separate via semicolon since banks use
commas to separate numbers.