use q2-like bitflags so we can represent mixes like (water | mist), which we need within the compiler