Fix indentation for some forms.

- `do-while` should indent the same as `while`.  The same goes for
  `do-until`.

- `if` should *not* indent as in Emacs Lisp, i.e. it should not do
  this:

    (if test
        then
      else)

  It now does the following:

    (if test
        then
        else)

  or, more generally,

    (if test
        then
        test-2
        then-2
        ...
        otherwise)

  which agrees with the `cond`-y nature of newLISP's `if`. (On this,
  see http://www.newlispfanclub.alh.net/forum/viewtopic.php?f=15&t=4383.)