Warnings about overloaded virtual methods hiding inherited ones.

Clang complains about some overriding methods hiding inherited
overloaded versions. Defining the overloaded methods in the derived
classes as well solves the issue.
Warnings about '< 0' check on unsigned variable.

Wether the variable shouldn't be unsigned or the condition
is useless.