add MIT license, reorg codebase