reorganize travis test scripts

Also skip testing with emacs-snapshot if only recipes have been updated.

* test/run-travis-ci.sh: Deleted.
* test/travis-ci.sh (prereqs, byte-compile, check-recipes,
  check-whitespace): New functions.
* .travis.yml (language): emacs-lisp -> generic. emacs-lisp is not
  recognized, so Travis would treat it as ruby and needlessly install
  rvm.
  (install, script): Call functions from travis-ci.sh.
Add travis status button to README.md
fix .travis.yml formatting
show function definitions for log
Improve travis log a bit

Log SHA1 of commit range tested.
Fold output of compilation.
Merge pull request #1971 from npostavs/travis

reorganize travis test scripts