Removed a lot of tests since they will be replaced anyway.
Updated a lot of code to sart implementing some best practices.