Ensure components are preprocessed separately

* Add the preprocess step to the very last stage of the build.
  Previously the component build was the only part  preprocessing
  the files last.
Improve docs