@alexfry has started to document the block diagram [here](https://miro.com/app/board/uXjVPaVCyVM=/) we should match this up with the original block diagram ideas. Remember to include the expected input and outputs for each block for future use such as testing