Add curated team codes and logic for fallback

The PA Client now includes a function to extract a 3-letter team code
from any of the team types that the client offers (via the underlying
team trait). These codes are taken firstly from a manually-curated
list of team codes for most teams. The fallback is a simple peice of
logic based on this list.

This logic belongs in the PA client since it needs to be shared across
Guardian applications and is specific to the types in this library.
Handle bad data from PA (team name with funny spaces)
Merge pull request #29 from guardian/team-codes

Add curated 3-letter team codes and logic for fallback