Editing for core.pipeline
- Add javadocs
- Tighten access where appropiate
- Add check for non-public metric methods in the Pipeline