themeing improvements, frontend changes

This PR implements some basic changes for easy themeing and the following tickets:

https://www.openproject.org/work_packages/3667
https://www.openproject.org/work_packages/3546
https://www.openproject.org/work_packages/3547
https://www.openproject.org/work_packages/3453
https://www.openproject.org/work_packages/3409