Hardening the project workflow

Also added Sinon as a development dependency for spies
Added specs and increased encapsulation