Dino Dex Second Refactor

Changes based on comments from first refactor.  I didn't touch the Main class, but I changed it to Example just to make it clear this is not really part of the code.
Try to rescue only a narrow set of errors. It's entirely possible that you'll trigger an unrelated error with your setters other than format. For instance, `{ weight: "big" }`. Maybe `rescue NoMethodError` instead?