Fix eval-after-load problems when swift-mode is byte-compiled

Fix eval-after-load problems when byte-compiled.

Use a lambda instead of progn inside eval-after-load body. This is the behavior of the `with-eval-after-load` macro introduced in Emacs 24.4. There seems to be a difference in semantics between progn and
lambda when byte-compiled.