VCS abstraction, subcomponent usage and small fixes