another pass on formatter lookup

- pop takes a default value (like dict)
- support `type in Formatter`
- allow lookup by type string (for consistency)
update formatter what's new