Make COMMON_LIBRARY_TYPE a cache property

Using static or shared libraries really is a system decision (cf. BGQ
performance with DSOs) -- Consequently one wants to setup the whole
build shared or static. This change makes this a cache property, and a
follow-on Buildyard change will propagate the setting from BY to all
projects. An even later change will probably auto-detect the target
platform and set COMMON_LIBRARY_TYPE accordingly.