Arduino Laser Range Finder

I looked at the schematic for my phone - the highest frequency section is probably the 5GHz WiFi, yet the clock for that is derived from a 48MHz crystal.
(If it didn't have the 5GHz band option, then the 2.4GHz band would be clocked from the same 19.2MHz crystal that provides the system clock for the 1.7GHz processor)

This is different, that's just a carrier signal. Generating a high frequency signal isn't the issue. Computer processors use clock multipliers to multiply a reference bus frequency, which itself is achieved by multiplying some base reference crystal. The limitation however is the reset time on all the registers. It takes a certain amount of time for all the registers to flip to 0 or 1. If too high a frequency is fed in, registers will start to flip before the previous state had a chance to settle, and then it all goes to heck. Radio circuitry does the same thing. Analog circuits can be used to multiply a base frequency. A 16 MHz crystal is typically used for 2.4 GHz radio applications, with a multiplier of around 150. And just like with registers on a processor though, there is a bandwidth limitation, and this is the processing speed. Notice that data transfer is not any faster at 5 GHz wifi than 2.4 GHz wifi? If it was just about the frequency of the carrier signal you'd expect things to be twice as fast, but they aren't. The radio signal is just a carrier wave. That wave then has to be encoded, which can be done with a variety of techniques. Technically-speaking, a higher frequency should result in higher data throughput for a given encoding technique. But only if your eyes are fast enough to observe it. Notice that wifi operates in the millions of bits per second whereas the carrier frequency is in the billions of cycles/sec. That's because we can't decode things any faster than this, at least not yet.

In the case of the laser rangefinder the same principle applies. We're talking about counting time, like a stopwatch. At the precise moment the laser pulse is transmitted we start the timer. At the precise moment it comes back we stop the timer. Subtract the two, we have travel time. Because light is so fast we have to be able to count sub-nanosecond intervals. It's physically impossible with a 12.8 MHz clock.

And again, this is assuming things are being done using "time of flight," which means the time is directly measured, and this is what the author said earlier. Other methods also exist for determining time of flight without actually measuring it, such as phase shift. If you send a beam of light out and then measure the reflected light that comes back there will be a phase shift between the two. You compare the beam that's coming in with the beam that's currently going out. It's a continuous sinusoid. Think of it like a really long snake. By comparing the front end with the rear and knowing how long the snake is, you can determine the distance. The phase shift provides this same data by utilizing multiple frequencies and solving simultaneous equations.

I'm not saying this range finder doesn't work, I'm just asking questions. How does it work? TOF doesn't jive.