Streamlined, refactored and now an object rather than class