changed newBuilder so that it actually creates a newBuilder instead of
sharing the parent's builder. In a multi-threading application, this
would make sense. Ther still is a (minor) problem of multithreating when
sharing the bf parameter in the process of transforming a tree (zip for
exemple) : should the code become parallel, this could not work.