[NX-450] Component Source API

JIRA: https://issues.sonatype.org/browse/NX-450
Could this also be seen as an id - are there extra semantics wrt. readability/structure here? (just wondering since we use id for the same kind of unique identifier everywhere else)