Flip order of group and repeater children.

Closes #2.

Here's an example survey:

    survey "foo" do
      section "one" do
        repeater "abc" do
	  dependency :rule => "A"
	  condition_A :q_1, '==', :a_1

	  q_1 "Eh?"
	  a_1 "Yes"
	end
      end
    end

In this case, the dependency applies to the repeater, not q_1 inside the
repeater.  However, prior to this commit, the compiler would visit the
repeater as

repeater -> q_1 -> a_1 -> dep

which, if you built the survey off of that, would result in

    survey "foo" do
      section "one" do
        repeater "abc" do
	  q_1 "Eh?"
	  a_1 "Yes"
	  dependency :rule => "A"
	  condition_A :q_1, '==', :a_1
	end
      end
    end

which is wrong, as the dependency has been reparented from the repeater
to q_1.

A similar problem was present in groups.

This commit addresses this by flipping the visitation order of
dependencies and questions for groups and repeaters.