Component simplify

See last three commits.