refactor core classes
specify dependency versions
add guard-rspec
prepare for travis-ci