reuse code for efficiency and maintainability

In coding, the goal is to notes/get things done mentality and the shortest path to this is by being efficient. One way to be efficient is to not reinvent the wheel and use interoperable components