I think he sounds all right and deserves a second chance.
He was late but it happens, he kept the OP in the loop, apologised and apologised again
They had a lovely few hours together and enjoyed each other's companies
His mates happened to arrive at the bar, he invited them to join them with the hamster cage (this has me in hysterics) yes they should have tried to include the OP more, yes they should have buggered off when they realised he was on a first date.
But maybe they didn't think it was a first date, maybe they are just go with the flow people... I actually think the positive here is that he was wanting the OP to meet his friends.
A mutual friend has said he is a good un, he text to make sure the OP got home safely, by 7ish this morning he had already contacted her, he apologised again for his lateness, took her stroppy/goady text on the chin (no offence meant OP herself described it as a bit stroppy or similar) and he apologised again and invited her for dinner and admitted a mistake. None of this crappy waiting three days rule he likes her he text her.
I'd say he sounds all right actually :) maybe something really horrible happened and he went and got drunk (who hasn't done this) surely it's worth a second date - I'm sure the OP will always wonder about him if she doesn't!
In the past when I was dating I went out on many first dates with men who pulled out all they stops on first or second dates and actually turned out to be the biggest arse holes... DP was late for our first and quite a bit late for the second date (and is always bloody late for everything still!) But he is the kindest, most relaxed and genuine man I've ever met and is the love of my life.
Please go on that second date OP and update :)