Fixing gemspec to add dependencies and re-organizing dependencies

The gemspec should contain details on what the library requires, not the Gemfile. This avoids issues in installing the gem and not having exactly what you need.

I've also reorganized the requires in the library files so that it's less redundant. One of the changes I've made here which I'm not sure about (and can be safely reverted) is that if you want all the artoo logic you'll do `require 'artoo'` but if you want all of the cool methods in Main (like sinatra) you have to do `require 'artoo/main'`. I'm not quite sure about this change because it means you have to write a little more (`/main`) to get the core easy functionality. It may however, be deemed that it's not that big a deal.