john patton