rewrote the dict api and dict plugin to use a new dictionary format