Complete working version
Refactor code
WIP - sync init for actions
Async working