diff --git a/README.md b/README.md
index ea693eb..806e572 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,11 @@
 ```
- _____                            ____           _           _
-| ____|_ __ ___   __ _  ___ ___  |  _ \ _ __ ___| |_   _  __| | ___
-|  _| | '_ ` _ \ / _` |/ __/ __| | |_) | '__/ _ \ | | | |/ _` |/ _ \
-| |___| | | | | | (_| | (__\__ \ |  __/| | |  __/ | |_| | (_| |  __/
-|_____|_| |_| |_|\__,_|\___|___/ |_|   |_|  \___|_|\__,_|\__,_|\___|
+ ____           _           _
+|  _ \ _ __ ___| |_   _  __| | ___
+| |_) | '__/ _ \ | | | |/ _` |/ _ \
+|  __/| | |  __/ | |_| | (_| |  __/
+|_|   |_|  \___|_|\__,_|\__,_|\___|
 ```
 
-## Prelude
-
 Emacs is probably the best text editor in the world. However, the
 process of coming up with a useful Emacs configuration is long and
 difficult. It's this process that separates you from truly taking
@@ -38,7 +36,18 @@ You can now power up your Emacs, sit back and enjoy Prelude.
 
 ## Would you like to know more?
 
-Check out the [Prelude's project page](http://batsov.com/prelude).
+Check out the [Prelude's project page](http://batsov.com/prelude) for
+all the gory details.
+
+If you're looking for more info on Emacs in general - consult
+[WikEmacs](http://wikemacs.org).
+
+## More goodies
+
+The [Prelude Modules](https://github.com/bbatsov/prelude-modules)
+project contains a lot of additional packages for Prelude
+(install-able via the `package-list-packages` command) - enhanced programming
+mode configs, latex config, erc config, etc.
 
 ## Known issues
 
@@ -55,11 +64,7 @@ development of Emacs Prelude.
 ## Bugs & Improvements
 
 Bug reports and suggestions for improvements are always
-welcome. github pull requests are even better! :-)
-
-I'd like to include a nice variety of Emacs 24 themes into Prelude -
-so if you've developed (or simply found) one - give me a shout and
-I'll take a look at it.
+welcome. GitHub pull requests are even better! :-)
 
 Cheers,<br>
 Bozhidar
diff --git a/init.el b/init.el
index f275cab..453624f 100644
--- a/init.el
+++ b/init.el
@@ -1,9 +1,9 @@
-;;; init.el --- Emacs Prelude: configuration entry point.
+;;; init.el --- Prelude's configuration entry point.
 ;;
 ;; Copyright (c) 2011 Bozhidar Batsov
 ;;
-;; Author: Bozhidar Batsov <bozhidar.batsov@gmail.com>
-;; URL: http://batsov.com/emacs-prelude
+;; Author: Bozhidar Batsov <bozhidar@batsov.com>
+;; URL: http://batsov.com/prelude
 ;; Version: 1.0.0
 ;; Keywords: convenience
 
@@ -32,8 +32,8 @@
 ;; Boston, MA 02110-1301, USA.
 
 ;;; Code:
-(message "Emacs Prelude is powering up... Be patient, Master %s!"
-         (getenv "USER"))
+
+(message "Prelude is powering up... Be patient, Master %s!" (getenv "USER"))
 
 (defvar prelude-dir (file-name-directory load-file-name)
   "The root dir of the Emacs Prelude distribution.")
@@ -44,9 +44,15 @@ avoid modifying the configuration there.")
   "Users of Emacs Prelude are encouraged to keep their personal configuration
 changes in this directory. All Emacs Lisp files there are loaded automatically
 by Prelude.")
+(defvar prelude-vendor-dir (concat prelude-dir "vendor/")
+  "This directory house Emacs Lisp packages that are not yet available in
+ELPA (or MELPA).")
+(defvar prelude-snippets-dir (concat prelude-dir "snippets/")
+  "This folder houses addition yasnippet bundles distributed with Prelude.")
 
 ;; add Prelude's directories to Emacs's `load-path'
 (add-to-list 'load-path prelude-modules-dir)
+(add-to-list 'load-path prelude-vendor-dir)
 
 ;; the core stuff
 (require 'prelude-packages)
@@ -56,6 +62,7 @@ by Prelude.")
 (require 'prelude-editor)
 (require 'prelude-global-keybindings)
 
+;; OSX specific settings
 (when (eq system-type 'darwin)
   (require 'prelude-osx))
 
@@ -66,7 +73,6 @@ by Prelude.")
 (when (file-exists-p prelude-personal-dir)
   (mapc 'load (directory-files prelude-personal-dir 't "^[^#].*el$")))
 
-(message "Emacs Prelude is ready to do thy bidding, Master %s!"
-         (getenv "USER"))
+(message "Prelude is ready to do thy bidding, Master %s!" (getenv "USER"))
 
 ;;; init.el ends here
diff --git a/prelude/prelude-editor.el b/prelude/prelude-editor.el
index 57b4208..9441cb9 100644
--- a/prelude/prelude-editor.el
+++ b/prelude/prelude-editor.el
@@ -74,10 +74,8 @@
                                          try-complete-lisp-symbol-partially
                                          try-complete-lisp-symbol))
 
-;; smart indenting and pairing for all
+;; smart pairing for all
 (electric-pair-mode t)
-(electric-indent-mode t)
-(electric-layout-mode t)
 
 ;; meaningful names for buffers with the same name
 (require 'uniquify)
@@ -118,7 +116,7 @@
 
 ;; use shift + arrow keys to switch between visible buffers
 (require 'windmove)
-(windmove-default-keybindings 'super)
+(windmove-default-keybindings)
 
 ;; automatically save buffers associated with files on buffer switch
 ;; and on windows switch
@@ -135,8 +133,8 @@
 (defadvice windmove-right (before other-window-now activate)
   (when buffer-file-name (save-buffer)))
 
-;; show-paren-mode: subtle highlighting of matching parens
-(show-paren-mode t)
+;; show-paren-mode: subtle highlighting of matching parens (global-mode)
+(show-paren-mode +1)
 (setq show-paren-style 'parenthesis)
 
 ;; highlight the current line
@@ -197,6 +195,7 @@
 
 ;; load yasnippet
 (require 'yasnippet)
+(add-to-list 'yas/snippet-dirs prelude-snippets-dir)
 (yas/global-mode 1)
 
 ;; projectile is a project management mode
@@ -220,6 +219,11 @@
     ;; otherwise fallback to helm-mini
     (helm-mini)))
 
+;; shorter aliases for ack-and-a-half commands
+(defalias 'ack 'ack-and-a-half)
+(defalias 'ack-same 'ack-and-a-half-same)
+(defalias 'ack-find-file 'ack-and-a-half-find-file)
+(defalias 'ack-find-file-same 'ack-and-a-half-find-file-same)
 
 ;; dired - reuse current buffer by pressing 'a'
 (put 'dired-find-alternate-file 'disabled nil)
diff --git a/prelude/prelude-mode.el b/prelude/prelude-mode.el
index e583bb8..a8d113f 100644
--- a/prelude/prelude-mode.el
+++ b/prelude/prelude-mode.el
@@ -42,7 +42,6 @@
     (define-key map [(control shift down)]  'prelude-move-line-down)
     (define-key map (kbd "C-c n") 'prelude-cleanup-buffer)
     (define-key map (kbd "C-c f")  'prelude-recentf-ido-find-file)
-    (define-key map (kbd "C-c i") 'prelude-ido-goto-symbol)
     (define-key map (kbd "C-M-\\") 'prelude-indent-region-or-buffer)
     (define-key map (kbd "C-c u") 'prelude-view-url)
     (define-key map (kbd "C-c e") 'prelude-eval-and-replace)
@@ -82,7 +81,6 @@
 
     ("Navigation"
      ["Enable arrow keys" prelude-restore-arrow-keys]
-     ["Go to symbol" prelude-ido-goto-symbol]
      ["Helm" helm-prelude])
 
     ("Windows"
@@ -104,7 +102,7 @@
 
 (define-minor-mode prelude-mode
   "Minor mode to consolidate Emacs Prelude extensions."
-  :lighter "Prelude"
+  :lighter " Prelude"
   :keymap prelude-mode-map
   (if prelude-mode
       ;; on start
diff --git a/prelude/prelude-osx.el b/prelude/prelude-osx.el
index 99b6c0b..4074ae2 100644
--- a/prelude/prelude-osx.el
+++ b/prelude/prelude-osx.el
@@ -1,6 +1,7 @@
 ;; On OS X Emacs doesn't use the shell PATH if it's not started from
 ;; the shell. If you're using homebrew modifying the PATH is essential.
 (push "/usr/local/bin" exec-path)
+(setenv "PATH" (concat "/usr/local/bin:" (getenv "PATH")))
 
 ;; Emacs users obviously have little need for Command and Option keys,
 ;; but they do need Meta and Super
diff --git a/prelude/prelude-packages.el b/prelude/prelude-packages.el
index 54656de..0e18730 100644
--- a/prelude/prelude-packages.el
+++ b/prelude/prelude-packages.el
@@ -41,8 +41,8 @@
 (setq url-http-attempt-keepalives nil)
 
 (defvar prelude-packages
-  '(melpa expand-region gist helm helm-projectile magit magithub
-                  rainbow-mode volatile-highlights yasnippet zenburn-theme)
+  '(ack-and-a-half expand-region gist helm helm-projectile magit magithub melpa
+                   rainbow-mode volatile-highlights yasnippet zenburn-theme)
   "A list of packages to ensure are installed at launch.")
 
 (defun prelude-packages-installed-p ()
@@ -50,15 +50,52 @@
         when (not (package-installed-p p)) do (return nil)
         finally (return t)))
 
-(unless (prelude-packages-installed-p)
-  ;; check for new packages (package versions)
-  (message "%s" "Emacs Prelude is now refreshing its package database...")
-  (package-refresh-contents)
-  (message "%s" " done.")
-  ;; install the missing packages
-  (dolist (p prelude-packages)
-    (when (not (package-installed-p p))
-      (package-install p))))
+(defun prelude-install-packages ()
+  (unless (prelude-packages-installed-p)
+    ;; check for new packages (package versions)
+    (message "%s" "Emacs Prelude is now refreshing its package database...")
+    (package-refresh-contents)
+    (message "%s" " done.")
+    ;; install the missing packages
+    (dolist (p prelude-packages)
+      (unless (package-installed-p p)
+        (package-install p)))))
+
+(prelude-install-packages)
+
+(defmacro prelude-auto-install (ext mode)
+  `(add-to-list 'auto-mode-alist
+                `(,ext . (lambda ()
+                           (package-install ',mode)
+                           (,mode)))))
+
+(defvar prelude-auto-install-alist
+  '(("\\.markdown\\'" . markdown-mode)
+    ("\\.md\\'" . markdown-mode)
+    ("\\.haml\\'" . haml-mode)
+    ("\\.scss\\'" . scss-mode)
+    ("\\.sass\\'" . sass-mode)
+    ("\\.groovy\\'" . groovy-mode)
+    ("\\.yml\\'" . yaml-mode)
+    ("\\.php\\'" . php-mode)
+    ("\\.hs\\'" . haskell-mode)
+    ("\\.less\\'" . less-css-mode)
+    ("\\.lua\\'" . lua-mode)
+    ("\\.coffee\\'" . coffee-mode)
+    ("\\.erl\\'" . erlang-mode)
+    ("\\.feature\\'" . feature-mode)))
+
+;; markdown-mode doesn't have autoloads for the auto-mode-alist
+;; so we add them manually if it's already installed
+(when (package-installed-p 'markdown-mode)
+  (add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode))
+  (add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode)))
+
+(dolist (entry prelude-auto-install-alist)
+  (let ((ext (car entry))
+        (mode (cdr entry)))
+    (unless (package-installed-p mode)
+      (prelude-auto-install ext mode))))
 
 (provide 'prelude-packages)
 ;;; prelude-packages.el ends here