pos_n_grams: Massive performance improvement

analyze.py no longer requires output dictionaries to contain all
possible keys.

Again, closes #20