Spinner refactoring work in progress.
Merge pull request #81 from lucassus/spinner_refactoring

Cleanup code for the spinner, write specs