Renamed Event to Input to be more accurate and to not clash with netwire
They may be removed in the future.
Made Spriggan a monad and fixed some bugs