Reworked MSQueue into framework

next pointer in Chain is now a weird union thing.
msqueue was chainged to be compatible
constants.h added for msqueue
added include guards
changed erroneous class description
added data pointer