Significant reorganization with several new modules added.