initial setup and tooling