New structure

Multiple tweaks. Fixed anti-patterns and async calls from constructors. Code is now better and it's significantly easier to write new extensions.