Refactoring some minimagick

I'll leave this PR open in order to see diffs from master.

Feel free to comment, propose changes and code with me! :sailboat: 

Roadmap:

- Split this one big file lib setup into many files.
- Add some tests(and convert the existent ones to rspec, is this any good?)
- Refactor & document
- Fix all current issues(there's 6 piled up)

Thanks.