Fix header inclusions

Used the tool `include-what-you-use` to include all headers we need.

URL: https://code.google.com/p/include-what-you-use/
Make ParamVector usage const where possible
Remove useless ';'
Use an assert instead of a function