Golog.Interpreter: reward is now type of DTBAT class.

The (Reward, Depth) tuple is now everywhere replaced by a type which is
a member of the DTBAT class.

Reason: Since there are no tests actions anymore in the interpreter
(they can be simulated by a primitive action (Test f) with a function
f :: Sit a -> Bool and definitions
  do_ (Test _) s = s
  poss (Test f) = f s
in the BAT typeclass), counting the depth independently doesn't make any
sense anymore anyway. (In fact with the reward outsourced to the DTBAT
instance, the user can avoid incrementing the depth for test actions
again!)
Restricting the reward to a Double value isn't very nice either.

Alternatively we could have used MultiParamTypeClasses.

The change also led to some nice simplifications in the code (I think
they would have been possible with the old model, too, but I'm not sure
right now):
 * treeDT just composes treeND and resolveDT
 * treeDTIO just composes treeNDIO and resolveDT and uses fmap
   to also apply resolveDT to all sync-actions
 * resolveDT is a new function which simply hands over chooseDT to
   resolve; the old chooseDT is now a sub-function of resolveDT.

The code is still untested; all DTBATs and some more code needs to be
adapted to compile.
Also a unit test should test that treeDTIO works correctly.