Rework jobs/playbooks/roles

Current setup doesn't work that well when inheriting. I would like "all
my projects" to only inherit from the job which uses the
`run-test-command` playbook. Then, those jobs which need submodules,
should explicitly ask for that pre- playbook provided by
`git-submodules`.

In Zuul and Ansible, roles are the bits that are supposed to be shared.
As per corvus recommendation on IRC, let's use job variables to control
execution in a more fine-grained manner.

Change-Id: I48c13bff0be7cf796b75e5176774226fb3bb5cc8
diff --git a/playbooks/run-test-command/run.yaml b/playbooks/run-test-command/run.yaml
index aa87128..d66a7ad 100644
--- a/playbooks/run-test-command/run.yaml
+++ b/playbooks/run-test-command/run.yaml
@@ -1,7 +1,5 @@
 - hosts: all
-
-  tasks:
-    - name: Run test_command
-      command: '{{ test_command }}'
-      args:
-        chdir: '{{ zuul.project.src_dir }}'
+  roles:
+    - role: git-submodules
+      when: prepare_git_submodules | default(false)
+    - run-test-command