reworking ActorRef & ownership, plus some new tests