Who is an American writer of speculative fiction, C. J. Cherryh or J. M. Barrie ?