track and enforce user-agent

This is #140 with fewer metrics being tracked.