Configurable timeout on build(), defaults to None

Many commands used in Dockerfiles hang for an extended period of time without producing any output, which will result in a socket timeout. Accordingly, it makes sense for `build()` to specify no timeout by default.