refactor some files for easier reading, remove unnecessary cstring conversion helpers. remove IComponent as it was too generic for our needs