What in general terms is the distinction between computer organization and computer architecture?