prepare for submodule
modify coding style, merged with GithubMarkdown, added additional features, fixed some stuff