Typo.
Added a skeleton 'component model' command-line report. Will eventually show details of the components produced by the project.
Split out rendering of component report to separate class and reuse the same rendering infrastructure used by the other command-line report tasks.
Added a spec for comonent reports.
Moved `displayName` up from ProjectNativeComponent to ProjectComponent.
Tweaked the display names for native component types.
Include the source sets and binaries of each component in the output of `gradle components`
Moved source file to correct source directory.
Changed the components report to include the source directories of each source set and the build task of each binary.
Updated spec.
Merged ProjectInternal.implicitTasks container into Project.tasks.

- Added TaskInternal.impliesSubProjects flag to allow help plugin to achieve the same behaviour as before.
- Changed TaskNameResolver to honour the `impliesSubProjects` flag. Behaviour isn't 100% same as with `implicitTasks` - fixes coming for this.
- Changed HelpTasksPlugin to use placeholder actions for each task it defines.
Some test tweaks.
Fixed expected output for task report samples.
Changed TaskNameResolver to correctly select tasks when TaskInternal.impliesSubProjects is true.
Added some int test coverage for task selection.
Don't need to build the full set of subprojects - just need to know if there is at least one child project.
Fixed BuildInvocationsBuilder so that it uses Project.getChildProjects() to traverse the project tree, instead of Project.getSubprojects() which happens to return all the descendants of a given project.
Some spec updates.
Fixed int test now that `java-lang` plugin adds source directories to source sets.
Merged TextReportRenderer into HtmlReportRenderer