first commit, design of the software