tree out the code

making the code more similar to microservices.

Significantly more modular. Lots of folders. Ensuring that when you are making a change most or all of the changes you need to make will be in that folder.