Code organization and comments

- Added a lot, A LOT of comments
- Code rearranged in order to separate which should be worked now and
what will be used in later stages of development (and that already were
built)