Module support

First module design done