Module tests, basic implementation. Still needs work.