Add __main__ guards to core
Add first playable version