Depend on stable version of other packages where possible

Also uses defvar for sc-mode-keywords rather than setq