Dominoes and induction, or how does induction work?
The inductive step is a proof of an implication: you are proving that if the property you want holds for $k$, then it holds for $k+1$.
It is a result of formal logic that if you can prove $P\rightarrow Q$ (that $P$ implies $Q$), then from $P$ you can prove $Q$; and conversely, that if from assuming that $P$ is true you can prove $Q$, then you can in fact prove $P\rightarrow Q$.
We do this pretty much every time we prove something. For example, suppose you want to prove that if $n$ is a natural number, then $n^2$ is a natural number. How do we start? "Let $n$ be a natural number." Wait! Why are you allowed to just assume that you already have a natural number? Shouldn't you have to start by proving it's a natural number? The answer is no, we don't have to, because we are not trying to prove an absolute, we are trying to prove a conditional statement: that if $n$ is a natural number, then something happens. So we may begin by assuming we are already in the case where the antecedent is true. (Intuitively, this is because if the antecedent is false, then the implication is necessarily true and there is nothing to be done; formally, it is because the Deduction Theorem, which is what I described above, tells you that if you manage to find a formal proof that ends with "$n^2$ is a natural number" by assuming that "$n$ is a natural number" is true, then you can use that proof to produce a formal proof that establishes the implication "if $n$ is a natural number then $n^2$ is a natural number"; we don't have to go through the exercise of actually producing the latter proof, we know it's "out there").
We do that in Calculus: "if $\lim\limits_{x\to x_0}f(x) = a$ and $\lim\limits_{x\to x_0}g(x) = b$, then $\lim\limits_{x\to x_0}(f(x)+g(x)) = a+b$." How do we prove this? We begin by assuming that the limit of $f(x)$ as $x\to x_0$ is $a$, and that the limit of $g(x)$ as $x\to x_0$ is $b$. We assume the premise/antecedent, and proceed to try to prove the consequent.
What this means in the case of induction is that, since the "Inductive Step" is actually a statement that says that an implication holds: $$\mbox{"It" holds for $k$}\rightarrow \mbox{"it" holds for $k+1$},$$ then in order to prove this implication we can begin by assuming that the antecedent is already true, and then proceed to prove the consequent. Assuming that the antecedent is true is precisely the "Induction Hypothesis".
When you are done with the inductive step, you have in fact not proven that it holds for any particular number, you have only shown that if it holds for a particular number $k$, then it must hold for the next number $k+1$. It is a conditional statement, not an absolute one.
It is only when you combine that conditional statement with the base, which is an absolute statement that says "it" holds for a specific number, that you can conclude that the original statement holds for all natural numbers (greater than or equal to the base).
Since you mention dominoes in your title, I assume you are familiar with the standard metaphor of induction like dominoes that are standing all in a row falling. The inductive step is like arguing that all the dominoes will fall if you topple the first one (without actually toppling it): first, you argue that each domino is sufficiently close to the next domino so that if one falls, then the next one falls. You are not tumbling every domino. And when you argue this, you argue along the lines of "suppose this one falls; since it's length is ...", that is, you assume it falls in order to argue the next one will then fall. This is the same with the inductive step.
In a sense you are right that it feels like "cheating" to assume what you want; but the point is that you aren't really assuming what you want. Again, the inductive step does not in fact establish that the result holds for any number, it only establishes a conditional statement. If the result happens to hold for some $k$, then it would necessarily have to also hold for $k+1$. But we are completely silent on whether it actually holds for $k$ or not. We are not saying anything about that at the inductive-step stage.
Added: Here's an example to emphasize that the "inductive step" does not make any absolute statement, but only a conditional statement: Suppose you want to prove that for all natural numbers $n$, $n+1 = n$.
Inductive step. Induction Hypothesis: The statement holds for $k$; that is, I'm assuming that $k+1 = k$.
To be proven: The statement holds for $k+1$. Indeed: notice that since $k+1= k$, then adding one to both sides of the equation we have $(k+1)+1 = k+1$; this proves the statement holds for $k+1$. QED
This is a perfectly valid proof! It says that if $k+1=k$, then $(k+1)+1=k+1$. This is true! Of course, the antecedent is never true, but the implication is. The reason this is not a full proof by induction of a false statement is that there is no "base"; the inductive step only proves the conditional, nothing more.
By the way: Yes, most proofs by induction that one encounters early on involve algebraic manipulations, but not all proofs by induction are of that kind. Consider the following simplified game of Nim: there are a certain number of matchsticks, and players alternate taking $1$, $2$, or $3$ matchsticks every turn. The person who takes the last matchstick wins.
Proposition. In the simplified game above, the first player has a winning strategy if the number of matchsticks is not divisible by $4$, and the second player has a winning strategy if the number of matchsticks is divisible by 4.
The proof is by (strong) induction, and it involves no algebraic manipulations whatsoever.
Arturo's lengthy answer hits all the right points in great detail.
More briefly: you are not doing yourself any favors by writing the Principle of Mathematical Induction as you are: the word "assume" need not appear anywhere in it.
Here is a statement of POMI (see here for variants on this statement and more on mathematical induction; but unfortunately this handout does not explicitly address your question.)
Let $S$ be a subset of the positive integers satisfying both of the following properties:
(i) $1 \in S$.
(ii) For all positive integers $n$, $n \in S \implies n+1 \in S$.
Then $S$ is the set of all positive integers.
So you need to understand the logic of an implication $A \implies B$. You seem to be thinking that from $A \implies B$ we can deduce $A$: this is absolutely false. Rather $A \implies B$ is a logical predicate defined by its truth table: i.e., for each of the four possible combinations of truth/falsity of $A$ and $B$, we define whether $A \implies B$ is true or false, as follows.
If $A$ is true and $B$ is true, then $A \implies B$ is true.
If $A$ is true and $B$ is false, then $A \implies B$ is false.
If $A$ is false and $B$ is true, then $A \implies B$ is true.
If $A$ is false and $B$ is false, then $A \implies B$ is true.
Thus, the only case in which $A \implies B$ is false is if $A$ is true and $B$ is false. So, if you are trying to prove that $A \implies B$ is true, it is enough to look at the situation when $A$ is true and show that in those cases $B$ is also true. So you see that we are not assuming that A is true: rather, we are looking at that case, since the other case is trivial: if $A$ is false, we don't need to know whether $B$ is true to know that the implication is true.
As an aside, I have to say that I wish I had a better understanding of why students have so much trouble with the logic of induction. I personally never did. While that was of some use to me mathematically, at this point I sort of wish that I did have some trouble at first: I would presumably have long since gotten over it but would be in a better situation with regards to my current teaching.
As I alluded to above, I do think that going over some (mildly) formal logic is a good way to be clear about induction (and this is also an argument for covering logic in "transitions" courses, as I wrote about in an answer to a MO question). Still I confess that I don't completely get the problems: this semester I am teaching an intermediate course on sequences and series which has this other intro to proofs course as a prerequisite. So the students have all seen induction before and seem to mostly get it. Mostly but not perfectly: when I did the second induction proof in class [the first one had two variables in it and I was inducting on one of them; in retrospect, that must have been just too complicated for some of the students], several students commented afterwards on the fact that I wrote "Induction step: suppose $n \in \mathbb{N}$. We will show that $P(n) \implies P(n+1)$." (And yes, after that, I said "Assume $P(n)$" and wrote it out: this "assume" business is the language which is used in practice!) In their previous course, for the induction step the variable name had been switched to $k$. They wanted to know "if it was okay" to use $n$ instead.
So I tried putting my hands on my hips and asking: is there any logical difference between the statements
"For all $n \in \mathbb{N}, P(n) \implies P(n+1)$"
and
"For all $k \in \mathbb{N}, P(k) \implies P(k+1)$"?
Of course not: we can use whatever names we want for the variables! (In my own "intro to proofs course" I would have stressed that the point that these are quantified variables, so it really can't make a difference, but I am leery of referring to things that other instructors may not have covered.)
But this answer reveals a sort of lack of understanding of the cognitive process behind the question. What are they really confused about? Can someone suggest a better answer?
You prove the base case for $n=1$ (or $0$, let's use $1$ for the sake of simplicity), and then you use inductive reasoning. The way you do it us by arguing that if the formula holds for $n=k$, it must also hold for $n=k+1$. If is the key here. Once you have proven that, you have effectively proven that the formula will work for all $n$, and here's why -- you can always start with $n=1$ ($n=k$), and prove that $n=1+1$ ($n=k+1$) will work. Then you can treat $n=1+1$ as $n=k$, and prove than $n=1+1+1$ ($n=k+1$) will satisfy the formula too, and so on to the infinity.
In other words, since you have demonstrated that the "base step" works, you only need to demonstrate that the "base step + 1" will work, too. Then the "base step + 1" can be treated as a 'new base step,' crudely put, and the sequence of "base step + 1" can be continued on and on. It does not matter if the statement holds when $n=k$ or not, all that matters is proving the implication -- if it holds for k, it will also hold for $k+1$. That allows you to move further from the base step.
So, maybe, the more correct way of stating the method is "Assuming that statement holds for some n, show that it holds for $n+1$." Once you get that, you can go further infinitely as described above. Obviously, this principle does not work for all proofs, as there are problems where you will need to use Principle of Strong Induction (break the problem down into cases, for which $n$ and $n+1$ actually correspond).