improve startup time

I don't care too much about startup time since I have emacs open all
day. However, it's grew to 8 seconds, which is a bit too
ridiculous. After profiling, I targeted the slowest things.

I also cleaned up some setup files.

setup-org-agenda.el/setup-org-mode.el: Split up org-agenda setup from
general org-mode setup. This is because on startup I only need
org-agenda.
init.el/setup-ido.el: Remove ido-at-point. I don't need it since I use
autocomplete.
init.el: eval-after-load for setup-mu4e, setup-org-mode, setup-python,
and setup-haskell.
init.el: autoload mu4e and twittering
init.el: Only load setup-yasnippet and setup-flycheck when in a
programming mode.
better-defaults.el: Remove encoding settings.
keybindings.el: Evaluate yasnippet rebindings only after yasnippet has
loaded.
setup-smartparens.el: Remove non-working pair setting.