Add beginConstructor

…because beginConstructor(…) is _way_ more readable than beginMethod(null, …).  This also changes scope management to use an `ArrayDeque` instead of an `ArrayList` with helper methods.