refactor, cleaning up and really, this time, a MVP.