remove unused features. can be replicated with smart window reuse.
renaming some classes. updated tests.