Huge refactor and cleanup

- removed unused log mediums
- broke out channel medium, http, to it's own class files
- now the only class one has to interact with to log is the shared instance
added property for url string
dictionary string actually needs to be json string
removed duplicate directory creation