First steps toward detecting spec

This commit introduces basic functionality for detecting the currently active
spec. It means issue #7 is finally coming along. Currently:

-   Keeps track of the current spec in the `Protipper` map.
-   Use a list of "must-have" abilities to determine whether the player qualifies
    for having a given spec.
-   Update this guess every time abilities appear or disappear.