Support for incremental builds for workspaces

Currently BuildStream never caches any build trees after a build, as noted in #21 (closed). However, when a workspace is active we have the opportunity to reuse the same workspace directory to build inside of - and workspace builds are where incremental builds will benefit the developer a lot by reducing the edit/compile/test cycles.

This is partly discussed in this mail thread in October 2017, since then a lot of work and discussion has taken place in MR !126 (merged).

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information