Make sbws easy to understand and maintain
There was not an initial design and we are still adding functionality. Some of the new functionality require modifying several parts of the code and it's becoming harder to maintain and understand. This ticket is to identify the changes needed (refactors, etc.).