Contain uchiwa class

Classes are not contained within other classes if not explicitly
contained with the anchor pattern or the contain keyword. This
causes the resource ordering to behave unpredictably even when
the three 3am classes are ordered. This commit contains the
uchiwa class within 3am::uchiwa. It also upgrades puppet in order
to support the contain keyword.