Initial pass at client modules (working on resolve)