re-ordered, added types, changes to assignemnt description
further work on the assignment operator