erasure, nonexhaustive-match, deprecation warnings

fix a few warnings I saw laying around