Right now I am contemplating a flight from the US to Inverness Scotland that connects in London. I have 2 hours and 20 minutes in London. I assume that I have to clear immigration there before going on to Inverness. First, is that correct? Assuming that is true, will 2 hours be enough?
You will clear immigration in London but you do it through "Flight Connections" rather than the main immmigrtion hall (There are no gates.) I went through in November and it only took about 5 minutes but it wasn't busy. You will have to go through security again.
How much time you need depends on when your flight arrives and whether or not you have to change terminals.
Use this calculator from Heathrow to figure out the time they suggest: