re-organise the logic for reading a pipe to a list.
ignore the _build directory created by corebuild.
use string instead of string list for request body.

Cohttp already provides a way of converting the request body to a string.
use correct function reference for body_to_string.
a simple start to an REST api.
Api middleware handles the api calls.

It transparently gets passed a request without its uri prefix, so the run function thinks it is root.
This way we could just run the api if we wanted to without the UI.

I want to also use functors to be able to nest middlewares, however I don't know a way
to have this recursion with a base case with functors. For now this relationship is hard coded.