Restore old indentation code

Our beginning-of-defun implementation is flawed, so we shouldn't use it
for indentation.  Let's wait for SMIE to get rid of this stuff.

This reverts commit 250f15a7fd335144f4eb2905cbbe483e5ba76e16.