fleshed out modules a little