Improve test harness

 - catch up with Algorithm API changes
 - fold GET and POST into perform_request; now they're shims