patch 8.0.0612: pack dirs are added to 'runtimepath' too late

Problem:    Package directories are added to 'runtimepath' only after loading
            non-package plugins.
Solution:   Split off the code to add package directories to 'runtimepath'.
            (Ingo Karkat, closes #1680)
diff --git a/src/main.c b/src/main.c
index ebd1ec3..0c7aa98 100644
--- a/src/main.c
+++ b/src/main.c
@@ -449,6 +449,12 @@
      */
     if (p_lpl)
     {
+	/* First add all package directories to 'runtimepath', so that their
+	 * autoload directories can be found.  Only if not done already with a
+	 * :packloadall command. */
+	if (!did_source_packages)
+	    add_pack_start_dirs();
+
 # ifdef VMS	/* Somehow VMS doesn't handle the "**". */
 	source_runtime((char_u *)"plugin/*.vim", DIP_ALL | DIP_NOAFTER);
 # else
@@ -456,7 +462,10 @@
 # endif
 	TIME_MSG("loading plugins");
 
-	ex_packloadall(NULL);
+	/* Only source "start" packages if not done already with a :packloadall
+	 * command. */
+	if (!did_source_packages)
+	    load_start_packages();
 	TIME_MSG("loading packages");
 
 # ifdef VMS	/* Somehow VMS doesn't handle the "**". */