Replace cl functions with cl-lib versions

Replace instances of `defun*`, `defmacro*` and `destructuring-bind` with
their `cl-` prefixed versions.
Fix test infrastructure.

- Use cleaner makefile
- Update travis yaml for new test makefile task name
- Remove unneeded test runner file
- Require dependencies in elisp tests