The program would have general knowledge of thing like squares, cells, rows, collumns, colours, letters, numbers and so on.
What do you mean by "general knowledge" of this objects ? If you intend to give it similar knowledge that a human would have about them you are going to have a realy hard time.
It's a broader task but the Cyc project is attempting to assemble a comprehensive knowledge base that spans the basic concepts that every little child know and have worked on it for the last 35 years (https://en.wikipedia.org/wiki/Cyc). You could check what they have on their database about the thing that interest you but even so it will be a really hard task.
Basically what Cyc is trying to do is to create a huge dataset which contain every "common knowledge" about the world. In your case the world would be limited to just the dot, line, grid, letter, etc but it would still be a huge work to create this database.
This is the way AI community dealed with "general knowledges" for a long time. An alternative to this approach would be to use machine learning but I have no idea how it could be used for this objective (apart from using NLP to help you create the database which is what Cyc is now doing)
I wondered if there is anything similar out there already?
As far as I know there is nothing of the sort as of now. There exist AI which can learn to play multiple video game but they don't read the rule (like : "Find a path through all the white squares."), they just try things until they find the "good" way to play a game. This AI generally use reinforcement learning.
If an AI could read instructions and solve the puzzles could we say that it is in someway intelligent?
The concept of intelligence is not something on which everyone agree and even so most of the people think that there is different level of intelligence.
From my point of view this AI would have a certain level of intelligence if it had the possibility to learn a new kind of game (even if somewhat similar to the ones it already know) in just a few try (I can't give you a number but definitively not the thousands that actual method would require). Just like you presented it this ability would probably require your AI to have some level of understanding of the different common concepts between games (lines, dots, path ...).