refactored specs using examples in shared contexts. unit separated on PlainUnit and CompositeUnit. multiplication of PlainUnit returns a CompositeUnit. removal of value spec and class. some other minor refactorings