Clear GCC warnings

This branch clears every warning detected by GCC by specifying -Wall -Werror.

In summary, following changes are made:
- Remove unused variables
- Comment the unused labels
- Fix some uninitialized variables
- Add missing libraries
- Add the parenthesis properly