initial commit

a good portion of the programming is already done.