Refactor chap 6 exercises

Split exercise so that first two parts do not require use of a specialized server. Third part makes use of a custom server submitted in a separate PR.