Change how components and vector parts are get/set; add tests for that