build: Let components decide whether static files are removed or not

We process the build result directory removing .py{c,o} and .{,l}a files.
However some components might need to keep some of these files around
for some reason.

An example is qtdeclarative which builds the Qt5QmlDevTools
static library.

We add the "keep-static" attribute which indicates whether we should
remove all static libraries or not, and "keep-files" which is a list
of files to keep.

Closes #16