A second stab at fixing Emacs 24.4

I noticed after work that, using Cask, I was still getting the same error as before. As I've stated in #41 the only reason I got it working is because I used `(require 'evil)` while testing and that just kept the entire thing from getting byte-compiled.

This change tries to take a different approach. By putting the evil bits in a separate file and having that file require evil unconditionally and allowing it to fail when evil is unavailable during compilation, the main evil-nerd-commenter code still gets byte-compiled and the evil code will just run interpreted if evil is available during runtime.

I have tested this exact code both while using Cask and using regular package.el.

Please let me know what you think.