How to create a point in time architecture in MySQL
I just skimmed the article, but it looks like the author's reinventing the bi-temporal database wheel. I'm not confident he did a good job of it, but I didn't read it closely.
Before you get too deep into this, take some time to skim Richard Snodgrass's old book Developing Time-Oriented Database Applications in SQL. It's available as a PDF from his web page.
I think MySQL's lack of support for CHECK constraints and peculiar implementation of GROUP BY will make his approach hard to implement. If you have freedom of choice, PostgreSQL might be a better platform for this.