Basic module getting init
Clean up signatures
Start to define interface
Rebase
Down to minimum options needed
Reorg some imports
Seems we can just use currentEvent
Basic approach working, general cleanup