Refactored and took out some artifacts from previous model