first commit - main bits working