john smalley