diff --git a/docs/docs/developer_docs/img/architecture_diagram.svg b/docs/docs/developer_docs/img/architecture_diagram.svg
index 0c9a2f31c2855fcf49f82e925f73a7801fc85124..0e04360d75b9a19b33043648c72e6014e52d0b5e 100644
--- a/docs/docs/developer_docs/img/architecture_diagram.svg
+++ b/docs/docs/developer_docs/img/architecture_diagram.svg
@@ -1,2 +1,2 @@
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="713px" height="573px" version="1.1" content="<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.98 Safari/537.36" version="6.0.2.1" editor="www.draw.io" type="device"><diagram name="Page-1">7Vptb9owEP41fJ2SmBD4CKx0k9ppEp3afXQTl3iYGDnmbb9+dmOTFwdoIUkLrEiVfb7Y8fNc7s6XtMBwtr5lcB7e0wCRlmMF6xb42nIcrwfEfynYJAK3ayeCCcNBIsoIxvgvUkJLSRc4QHFOkVNKOJ7nhT6NIuTznAwyRld5tRdK8qvO4QQZgrEPiSl9xAEPE2nXtVL5N4QnoV7ZttTIM/SnE0YXkVqv5YCX179keAb1XEo/DmFAVxkRuGmBIaOUJ63ZeoiIhFbDllw32jEKusm0S0gWaiu/Io45QYGQ3sENYmpdvtF7JdSfInm93QIDvT+GIv6mBXvGgsYCr3BsV1iFmKPxHPpydCWsR8hCPiNqOOaMTtGQEsqEJKIR2go1E1LthUZ8BGeYSAN7gCGdQSVVxiQsCQwg81UXyFFMiJ5Y8DLy5G+75yViHK0L9KcwJMgqEG4RnSHONkJHX9FWhG60Iav+KjWftjafMGs6WgiVyU62c6ewi4ZCvpwFvfi1s9D28iw4XZMFYJewAHpVsGD/Z+HV+7+BhG5dJJTc7n4PtvXEKUkoEMFAdSnjIZ3QCJKbVDrI05ihDK0xfxJtS7V/y/YXV/YisZMnrSY76dgfxPlGsQMXnApRuu4dpfN3MZ3sR25iJyRKFNMF85WWihwcsgnSWqCcZ4YI5HiZn/4U0rb3UyMHzrmS4DRFgumtqiAhMX5Fg53lIPNc/FZ0fVYOrBM5eL20zxjcZBTmFEc8Nijazv821kA9rHmXQJvd0KNjZt1jxJYlufaBgF+Ojxnx84mBiN92X/40lmo9nRTuD+Y7MFIXAKuQ15YEc9spCebtCmK54zXskT5pVNAZa862d+Rg1YeFbj0kOBfBgtcUC72m3fw5sdBriAXbPGffwwhOpKe3Bt8vz92DkjJGbe7eNs/PKbpDQhfB+QPc7n0kwI6Zp3DKZC20CGwcwrls+huChQ9h7y1WZDE8tmJRAdy218mnLyLqFOFu90rQditAGxhoj7DA17EOgr54Rk0AHidgezVh3zmcOpaVgaqwdODWEi5zBQUvV1Cw8uHSqT5exiLk8b58uSFNhMA4xv5DiCM9JIxre8NRUK4oBjJqR0bgzgfmQaBTP7H7eL0yWk89ZByoe6iZf0pBxnGAQowsVnAP6Lu2VTCp5A6OLbGAeo6he6qT1210p2bzxxmdUzA6+4DRFfRdr1qj08hksocf/fGVpQxl2XFdKYPtGYA/UjYVjwPHNBID5juKszt9FPFtgyZPH2aVNA+wc4EA95oE2PwWIw+w+arg7AF23foAFt30Q5zEhacfO4Gbfw==</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs/><g transform="translate(0.5,0.5)"><rect x="71" y="1" width="450" height="150" rx="4.5" ry="4.5" fill="#f7f7f7" stroke="none" pointer-events="none"/><rect x="401" y="181" width="310" height="390" rx="9.3" ry="9.3" fill="#f7f7f7" stroke="none" pointer-events="none"/><rect x="1" y="181" width="380" height="390" rx="11.4" ry="11.4" fill="#f7f7f7" stroke="none" pointer-events="none"/><path d="M 231.33 101.33 L 177.7 101.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 172.45 101.33 L 179.45 97.83 L 177.7 101.33 L 179.45 104.83 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 231.33 91.33 L 203.33 91.33 Q 193.33 91.33 193.33 81.33 L 193.33 58.67 Q 193.33 48.67 183.33 48.67 L 162.37 48.67" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 157.12 48.67 L 164.12 45.17 L 162.37 48.67 L 164.12 52.17 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 291.33 121.33 L 291.33 194.97" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 291.33 200.22 L 287.83 193.22 L 291.33 194.97 L 294.83 193.22 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 321.33 121.33 L 321.33 151.33 Q 321.33 161.33 331.33 161.33 L 471.33 161.33 Q 481.33 161.33 481.33 171.33 L 481.33 194.97" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 481.33 200.22 L 477.83 193.22 L 481.33 194.97 L 484.83 193.22 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="231" y="81" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(274.5,94.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="33" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 35px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Server</div></div></foreignObject><text x="17" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Server</text></switch></g><path d="M 291.33 241.33 L 291.33 401.33 Q 291.33 411.33 281.33 411.33 L 217.7 411.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 212.45 411.33 L 219.45 407.83 L 217.7 411.33 L 219.45 414.83 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 261.33 241.33 L 261.33 341.33 Q 261.33 351.33 251.33 351.33 L 217.7 351.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 212.45 351.33 L 219.45 347.83 L 217.7 351.33 L 219.45 354.83 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 321.33 241.33 L 321.33 461.33 Q 321.33 471.33 311.33 471.33 L 217.7 471.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 212.45 471.33 L 219.45 467.83 L 217.7 471.33 L 219.45 474.83 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="231" y="201" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(260.5,214.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="61" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 63px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Manager BI</div></div></foreignObject><text x="31" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Manager BI</text></switch></g><rect x="421" y="201" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(441.5,214.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="79" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 81px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Manager Cloud</div></div></foreignObject><text x="40" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Manager Cloud</text></switch></g><path d="M 107 35 C 107 23 156 23 156 35 L 156 62 C 156 74 107 74 107 62 Z" fill="#ffffff" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><path d="M 107 35 C 107 44 156 44 156 35" fill="none" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(114.5,43.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="34" height="10" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 10px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 34px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Storage</div></div></foreignObject><text x="17" y="10" fill="#000000" text-anchor="middle" font-size="10px" font-family="Tahoma">Storage</text></switch></g><path d="M 91 81 L 164 81 L 171 88 L 171 121 L 98 121 L 91 114 L 91 81 Z" fill="#ffffff" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><path d="M 98 121 L 98 88 L 91 81 M 98 88 L 171 88" fill="none" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(104.5,95.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="53" height="10" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 10px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 53px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">File Storage</div></div></foreignObject><text x="27" y="10" fill="#000000" text-anchor="middle" font-size="10px" font-family="Tahoma">File Storage</text></switch></g><path d="M 84.97 231.33 L 78.15 231.33 Q 71.33 231.33 71.33 241.33 L 71.33 331.33 Q 71.33 341.33 78.15 341.33 L 84.97 341.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 231.33 L 83.22 233.67 L 84.97 231.33 L 83.22 229 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 341.33 L 83.22 343.67 L 84.97 341.33 L 83.22 339 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 84.97 221.33 L 71.33 221.33 Q 61.33 221.33 61.33 231.33 L 61.33 401.33 Q 61.33 411.33 71.33 411.33 L 84.97 411.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 221.33 L 83.22 223.67 L 84.97 221.33 L 83.22 219 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 411.33 L 83.22 413.67 L 84.97 411.33 L 83.22 409 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 84.97 211.33 L 61.33 211.33 Q 51.33 211.33 51.33 221.33 L 51.33 461.33 Q 51.33 471.33 61.33 471.33 L 84.97 471.33" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 211.33 L 83.22 213.67 L 84.97 211.33 L 83.22 209 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90.22 471.33 L 83.22 473.67 L 84.97 471.33 L 83.22 469 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 91 201 L 164 201 L 171 208 L 171 241 L 98 241 L 91 234 L 91 201 Z" fill="#ffffff" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><path d="M 98 241 L 98 208 L 91 201 M 98 208 L 171 208" fill="none" stroke="#1a1a1a" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(121.5,215.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="19" height="10" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 10px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 19px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">NAS</div></div></foreignObject><text x="10" y="10" fill="#000000" text-anchor="middle" font-size="10px" font-family="Tahoma">NAS</text></switch></g><rect x="91" y="331" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(114.5,344.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="73" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 75px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Workstation 1</div></div></foreignObject><text x="37" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Workstation 1</text></switch></g><rect x="91" y="391" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(114.5,404.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="73" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 75px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Workstation 2</div></div></foreignObject><text x="37" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Workstation 2</text></switch></g><rect x="91" y="451" width="120" height="40" fill="#ffffff" stroke="#1a1a1a" pointer-events="none"/><g transform="translate(114.5,464.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="73" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Tahoma; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 75px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Workstation 3</div></div></foreignObject><text x="37" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Tahoma">Workstation 3</text></switch></g></g></svg>
\ No newline at end of file
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="851px" height="371px" version="1.1" content="<mxfile userAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36" version="6.0.3.3" editor="www.draw.io" type="google"><diagram name="Page-1">7VnLcpswFP0aZtpFPAgBdpaNm6aLZKYznjbNUgEFqGWuRwg/+vUVRrwscEmaYvrwxuhwka7OOb4Xg4Hnq90NJ+vwDnzKDMv0dwZ+b1gWstBUfmXIPkdmjpkDAY98FVQBi+g7VWARlkY+TRqBAoCJaN0EPYhj6okGRjiHbTPsCVhz1TUJqAYsPMJ09D7yRXi0iwz/SKMgLFZGpjrzSLxlwCGN1XqGhZ8On/z0ihRzqfgkJD5saxC+NvCcA4j8aLWbU5ZxW9CWX/eh4+zUoo9T7BD86PvoyUIXWXC2zoawVO3tcywiwagv0Vuyp1wlIvbF5hl4S5pNiAx8VWyY01i8LANby0BbcRtGgi7WxMvGW2kpuXAoVkzlkAgOSzoHBlwiMcS0TGxDuaC7I9GqXDv4UKnfUFhRwffyIjXFpZJF2RbZarxtMUFYMwCeKpAo4wXl1BVX8kDR1U5dS/7P5Br/nGrqS6OrIXARQgAxYdcVenVwb6l/TYZvVIi9+q2SVICEqhluAdYqju4i8VUemxNHjR4aZspS6NyxghJIuUc7tllUBMID2il0u86cMiKiTXP9NtEOl77jnOxrAWuIYpHUZv6UAZV9bMtp+MdyjwQ8iseueSpeHuQZVPYpt9LLURor9gv8UHNAt7K9vRHL5GtTZMNsDlMz3oBecV7DK7oZnHYzlFPkOamrKtV/t+kcc2DTIfc1q1C3B095q68/B3Qd+lXb9e0rXdnV2sSC8k3LnUBThGd1aXnjYx4+fVs1OtmYsds0OZrpnRlZLZ3ZfoXGrBE4HcbQA5vW6mFa91yevfznakgfOWbnkkP/W3FHYvmvSNYQ800UX4SQJvTtmAvKURcsx2cpKAhpVP0NFcXp0wbNdp0GaIMvuRv+s2tKL0HwuQSx/wvSKsjZqrxzqsrPGaT+mEu8bY+pxLsal1eM+HTE/JXcKP5sdE7+Zhp/98CXiZA/AYhHzKLljonFYvEajV/uRsyeg0bFnv6AddTsuc6o2NPbyWQyGTF9zmxMDQTpFXDc9E0vh3OfHFYvzfKHltWbSXz9Aw==</diagram></mxfile>" style="background-color: rgb(255, 255, 255);"><defs/><g transform="translate(0.5,0.5)"><rect x="0" y="0" width="850" height="370" fill="#ffffff" stroke="none" pointer-events="none"/><path d="M 335 80 L 335 110 Q 335 120 325 120 L 280 120 Q 270 120 270 130 L 270 153.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 270 158.88 L 266.5 151.88 L 270 153.63 L 273.5 151.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 335 80 L 335 110 Q 335 120 345 120 L 400 120 Q 410 120 410 130 L 410 153.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 410 158.88 L 406.5 151.88 L 410 153.63 L 413.5 151.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 335 80 L 335 110 Q 335 120 345 120 L 540 120 Q 550 120 550 130 L 550 153.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 550 158.88 L 546.5 151.88 L 550 153.63 L 553.5 151.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="275" y="40" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(316.5,53.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="36" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 36px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Server</div></div></foreignObject><text x="18" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">Server</text></switch></g><path d="M 270 200 L 270 225 Q 270 235 260 235 L 100 235 Q 90 235 90 245 L 90 263.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 90 268.88 L 86.5 261.88 L 90 263.63 L 93.5 261.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 270 200 L 270 225 Q 270 235 260 235 L 240 235 Q 230 235 230 245 L 230 263.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 230 268.88 L 226.5 261.88 L 230 263.63 L 233.5 261.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="210" y="160" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(217.5,173.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="104" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 106px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Manager (in-house)</div></div></foreignObject><text x="52" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">Manager (in-house)</text></switch></g><path d="M 410 200 L 410 225 Q 410 235 420 235 L 470 235 Q 480 235 480 245 L 480 263.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 480 268.88 L 476.5 261.88 L 480 263.63 L 483.5 261.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 410 200 L 410 225 Q 410 235 420 235 L 610 235 Q 620 235 620 245 L 620 263.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 620 268.88 L 616.5 261.88 L 620 263.63 L 623.5 261.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 410 200 L 410 225 Q 410 235 420 235 L 750 235 Q 760 235 760 245 L 760 263.63" fill="none" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><path d="M 760 268.88 L 756.5 261.88 L 760 263.63 L 763.5 261.88 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="none"/><rect x="350" y="160" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(364.5,173.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="90" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 92px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Manager (Cloud)</div></div></foreignObject><text x="45" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">Manager (Cloud)</text></switch></g><rect x="30" y="270" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(74.5,283.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="30" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 32px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Blade</div></div></foreignObject><text x="15" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">Blade</text></switch></g><rect x="170" y="270" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(197.5,283.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="64" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 64px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">Workstation</div></div></foreignObject><text x="32" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">Workstation</text></switch></g><rect x="420" y="270" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(470.5,283.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="18" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 19px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">VM</div></div></foreignObject><text x="9" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">VM</text></switch></g><rect x="560" y="270" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(610.5,283.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="18" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 19px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">VM</div></div></foreignObject><text x="9" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">VM</text></switch></g><rect x="490" y="160" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(544.5,173.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="10" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 12px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">...</div></div></foreignObject><text x="5" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">...</text></switch></g><rect x="700" y="270" width="120" height="40" rx="6" ry="6" fill="#ffffff" stroke="#000000" pointer-events="none"/><g transform="translate(754.5,283.5)"><switch><foreignObject style="overflow:visible;" pointer-events="all" width="10" height="12" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 12px; white-space: nowrap; word-wrap: normal; text-align: center;"><div xmlns="http://www.w3.org/1999/xhtml" style="display:inline-block;text-align:inherit;text-decoration:inherit;">...</div></div></foreignObject><text x="5" y="12" fill="#000000" text-anchor="middle" font-size="12px" font-family="Helvetica">...</text></switch></g></g></svg>
\ No newline at end of file
diff --git a/docs/docs/developer_docs/roadmap.md b/docs/docs/developer_docs/roadmap.md
index 652e9af46c1f52d39baf8631b82054d85f3efc02..a1c619cfab297615bac26a51b619db63a57a5304 100644
--- a/docs/docs/developer_docs/roadmap.md
+++ b/docs/docs/developer_docs/roadmap.md
@@ -1,227 +1,5 @@
# Roadmap
-General planning for the next develoment steps.
+The day-to-day planning for development is available on
+[developer.blender.org](https://developer.blender.org/project/board/58/). In this section we summarize
+the high level goals for the projects.
-## In progress
-Handle mapping of executable paths (and shared dir paths) for each worker when compiling a task.
-
-## New job/task system
-We use a nested Job -> Tasks -> Commands structure. A *job* defines a directed graph of *tasks*, wich are composed by an ordered list of *commands*.
-
-Here is the data structure of a job.
-
-
-```
-{
- 'name': {
- 'type': 'string',
- 'required': True,
- },
- # Defines how we are going to parse the settings field, in order to generate
- # the tasks list.
- 'job_type': {
- 'type': 'string',
- 'required': True,
- },
- # Remarks about the settings, the author or the system
- 'notes': {
- 'type': 'string',
- },
- 'project': {
- 'type': 'objectid',
- 'data_relation': {
- 'resource': 'projects',
- 'field': '_id',
- 'embeddable': True
- },
- },
- 'user': {
- 'type': 'objectid',
- 'required': True,
- 'data_relation': {
- 'resource': 'users',
- 'field': '_id',
- 'embeddable': True
- },
- },
- # We currently say that a job, and all its tasks, will be assigned to one
- # manager only. If one day we want to allow multiple managers to handle a
- # job we can convert this to a list.
- 'manager': {
- 'type': 'objectid',
- 'data_relation': {
- 'resource': 'managers',
- 'field': '_id',
- 'embeddable': True
- },
- },
- 'status': {
- 'type': 'string',
- 'allowed': [
- 'completed',
- 'active',
- 'canceled',
- 'queued',
- 'failed'],
- 'default': 'queued'
- },
- # This number could be also be a float between 0 and 1.
- 'priority': {
- 'type': 'integer',
- 'min': 1,
- 'max': 100,
- 'default': 50
- },
- # Embedded summary of the status of all tasks of a job. Used when listing
- # all jobs via a graphical interface.
- 'tasks_status': {
- 'type': 'dict',
- 'schema': {
- 'count': {'type': 'integer'},
- 'completed': {'type': 'integer'},
- 'failed': {'type': 'integer'},
- 'canceled': {'type': 'integer'}
- }
- },
- # The most important part of a job. These custom values are parsed by the
- # job compiler in order to generate the tasks.
- 'settings': {
- 'type': 'dict',
- # TODO: introduce dynamic validator, based on job_type/task_type
- 'allow_unknown': True,
- }
-}
-```
-
-While the original structure of jobs remains the same from the original Flamenco 2, we are altering the task structure.
-
-
-```
-{
- 'job': {
- 'type': 'objectid',
- 'data_relation': {
- 'resource': 'jobs',
- 'field': '_id',
- 'embeddable': True
- },
- },
- 'manager': {
- 'type': 'objectid',
- 'data_relation': {
- 'resource': 'managers',
- 'field': '_id',
- 'embeddable': True
- },
- },
- 'name': {
- 'type': 'string',
- 'required': True,
- },
- 'status': {
- 'type': 'string',
- 'allowed': [
- 'completed',
- 'active',
- 'canceled',
- 'queued',
- 'processing',
- 'failed'],
- 'default': 'queued'
- },
- 'priority': {
- 'type': 'integer',
- 'min': 1,
- 'max': 100,
- 'default': 50
- },
- 'job_type': {
- 'type': 'string',
- 'required': True,
- },
- 'parser': {
- 'type': 'string',
- 'required': True,
- },
- 'settings': {
- 'type': 'dict',
- # TODO: introduce dynamic validator, based on job_type/task_type
- 'allow_unknown': True,
- },
- # 'commands': {
- # 'type': 'list',
- # 'schema': {
- # 'type': 'dict',
- # 'schema': {
- # # The parser is inferred form the command name
- # 'name': {
- # 'type': 'string',
- # 'required': True,
- # },
- # # In the list of built arguments for the command, we will
- # # replace the executable, which will be defined on the fly by
- # # the manager
- # 'argv': {
- # 'type': 'list',
- # 'schema': {
- # 'type': 'string'
- # },
- # },
- # }
- # },
- # },
- 'log': {
- 'type': 'string',
- },
- 'activity': {
- 'type': 'string',
- 'maxlength': 128
- },
- 'parents': {
- 'type': 'list',
- 'schema': {
- 'type': 'objectid',
- 'data_relation': {
- 'resource': 'tasks',
- 'field': '_id',
- 'embeddable': True
- }
- },
- },
- 'worker': {
- 'type': 'string',
- }
-}
-```
-
-
-## Implement local storage
-Create an abstract Storage class for Pillar, that can be initialized with different storage backends.
-
-## Jobs and tasks storage
-Default Pillar storage is flat and file-based (one file has one _id). For Flamenco jobs (and tasks) it makes sense to keep everything into 1 directory.
-
-```
-/<project_uuid>
- /flamenco
- /<job_uuid>
- /thumbnails
- /<command_name>
-```
-
-## Manager: job_type table
-In the job_type table we store the path remap instructions for each job.
-
-```
-{
-'blender_render': {
- 'windows': '',
- 'darwin': '',
- 'linux': '',
- },
-'shared': {
- 'windows': '\\shared\',
- 'darwin': '/Volumes/shared',
- 'linux': '/shared',
- },
-}
-```
\ No newline at end of file
diff --git a/docs/docs/developer_docs/worker.md b/docs/docs/developer_docs/worker.md
deleted file mode 100644
index 250c75573cb11939fffbae926c8593e654b7a82d..0000000000000000000000000000000000000000
--- a/docs/docs/developer_docs/worker.md
+++ /dev/null
@@ -1,89 +0,0 @@
-# Worker setup
-
-There is a number of ways to set up a Flamenco worker. We are going to consider
-the specific instance of getting a Blender render node.
-
-## Simple worker (Linux)
-
-Setting up a simple worker would require the following configuration:
-
-* python 2.7 with requests library
-* blender package
-* `libglu` and and `libxi6` libraries
-
-The libraries can be installed with::
-
- sudo apt-get install libglu1-mesa libxi6
-
-Once the node is setup, we run the manager run.py script and wait for a response
-from the manager, which will provide a link to download.
-
-## Shared resources
-
-In case the job files are large (2+GiB), we can avoid long transfer times by
-mounting a shared drive with the workers, which will be able to read the file
-directly.
-
-
-Run a Blender instance inside of a byobu session.
-
-## Compute Engine setup
-
-### Ubuntu 14.04
-
-We need to mount the resources disk (with software and file to render).::
-
- sudo mkdir /mnt/render
- sudo mkdir /mnt/render-output
-
-We if our disk is labeled `render-base`, then it will be available with a
-`google-` prefix.::
-
- sudo mount -o discard,defaults /dev/disk/by-id/google-render-base /mnt/render
- sudo chmod a+w /mnt/render
- sudo chmod a+w /mnt/render-output
- echo '/dev/disk/by-id/google-render-base /mnt/render ext4 discard,defaults 1 1' | sudo tee -a /etc/fstab
-
-### GCS Fuse setup
-
-In order to mount a large storage (a GCS bucket) we need to get `gcsfuse` running.
-Taken from gcsfuse docs.
-
-
-1. Add the gcsfuse distribution URL as a package source and import its public
- key::
-
- export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
- echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
- curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
-
-2. Update the list of packages available and install gcsfuse.::
-
- sudo apt-get update
- sudo apt-get install gcsfuse
-
-3. (**Ubuntu before wily only**) Add yourself to the `fuse` group, then log
- out and back in::
-
- sudo usermod -a -G fuse $USER
- exit
-
-
-### Connect GCS bucket
-
-
- gcsfuse render-storage /mnt/render-output
-
-
-### Blender command example
-
-
- /mnt/render/data/bin/blender-pano-experiments/blender \
- --enable-autoexec -noaudio --background \
- /mnt/render/data/file/01_01_A.lighting.vr/01_01_A.lighting.vr.blend \
- --render-output /mnt/render-output \
- --render-format EXR \
- -f 760 \
- -- \
- --cycles-resumable-num-chunks 1 \
- --cycles-resumable-current-chunk 2
\ No newline at end of file