Cleanup/Refactor/Filter
Cleaned up some code and made the filter behave appropriately. also
changed from IDialog to Iwindow on one creation class for consistency.