changed to object-orientated from procedural
added TODO
added TODO
debugging & usability improvements