Fix penalty parsing to deal with spacing problems

Fix a problem when there was no space around the ':' separator. We no
long assume there are spaces when splitting and instead use strip() to
trip any spaces left over.

Add a test case to cover this.