Added typed keys

Added an enum that allows us to match a key against a typed list.