Refactor - Use bind >>= notation instead of do
Refactor - simplify expression
Use workspaces
Refactor - format
Intermediary commit