Some refactor actions

- Reordered some fields and methods.
- Added and modified a few Javadocs.
- Replaced some println statements with log calls.
- Removed most of the final keywords (to make this class uniform with the code style of the rest of the project).