use Cask for development
update Makefile to use Cask
add travis-ci support
add melpa badges
clean up compilation errors