Initial module code

Should be enough here to run and test