Improve feature handling and make representations immutable