feat(init): port from old asimov, refactor
Merge pull request #1 from asimov/wip/initial-port

feat(init): port from old asimov, refactor