Makes msRgbEvol generically return one value given one filter
Switches msRgbEvol back to returning a full mag set based on input filters

The single-filter method, while useful, required a binarySearch for every iteration. It's pre-optimization, but it's worth it.
Moves some uses of cmpnt out of setMags
Moves wdEvol and setMags into Star
Adds deriveCombinedMags to Star
Removes Star parameter from deriveCombinedMags and wdEvol
Makes setMags return an array rather than modifying a reference
Removes unnecessary passing of clusterAv and flux
Converts deriveCombinedMags to use a separate array internally rather than the 3rd index of mag
Converts unchecked array accesses to bounds checked .at() in Star, marg, and evolve
Makes deriveCombinedMags return mags and removes uses of cmpnt in marg
Removes passing of mags and globalMags to calcPost
Removes Star.photometry[] and makes logPost take a mag array
Switches from unsafe to checked array access in densities.cpp
Removes ltau reference parameter
Moves calcPost back to marg.cpp
Switches deriveCombinedMags to use two magnitude arrays rather than a magnitude matrix
Removes poly.*
Changes unchecked to checked array access in sample(Wd)Mass
Adds NOINSTALL flag in build.sh to avoid multiple builds when compiling files with errors.