made access work with slot-definitions as well as slot-names

 * accessing a slot by definition works and has tests
 * effects has-slot?, has-reader?, has-writer?
 * fixed long term bug in has-writer that would cause it to return
   incorrect results