Use strict
Seperated functionality into modules