Added MAX_WORD_LENGTH and MIN_WORD_LENGTH fields to Dictionary class

DictionaryParser no longer determines whether to filter out words.
Dictionary.put() does this internally based on the above fields.
Updated enum Difficulty with 'steps'.

The field 'steps' corresponds to the number of steps that are necessary
to exist between source and destination.
Changed wordLengthMap to type Map<Integer, List<String>>

This change has been made to allow easy retrival via generateWord()
Added documentation for DictionaryParser class