Refactor configuration and it's spec.

Most of these suggested changes are just my thoughts on the 'problem'.  

Take what you like and toss out the rest...