Fix extra gcc warnings.

When -Wextra flag is enable, gcc complains about base class not
being explicitly initialized in virtual inheritance. This patch
add calls to base ctors.
Fix extra gcc warnings.

Remove useless return type const qualifier.
Merge pull request #546 from polch/gcc-extra-warnings

Gcc extra warnings