Refactored all window recipients and types

Tests need fixing