Definition of differentiability I can't figure out the intuition and motivation behind the following definition:
Function $f$, defined in some neighborhood of $x_0$, is said to be differentiable, if: $$f(x_0 + \Delta x)-f(x_0)=A\Delta x+o(\Delta x), \Delta x \rightarrow 0$$
where $A$ is some real number, or equivalently:
$$\Delta y=A\Delta x +\epsilon(\Delta x)\Delta x$$ where $\epsilon(\Delta x)$ is infinitely small as $\Delta x \rightarrow 0$.
I understand the limit definition of differentiability, and I understand the proof that two definitions are equivalent, but I just don't get the above one.
At first look it says that we can approximate the change of function by some linear(?) function ?
And if it's saying that we can approximate the value of $f$ at point $a$ by some linear function, doesn't this definition make every function differentiable, as we can chose constant function $f(x)=a$ for approximation .. ?
Also, I don't get the $o(\Delta x)$ part ..
Can this be shown visually ? (But then, visualization would be the same as for limit definition, right?)
 A: If you understand the definition of derivative then you know that $$f'(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$$
This means that for small $h$ $$f'(x)\approx\frac{f(x+h)-f(x)}{h}$$
More precisely, there is an error term $\epsilon$ such that $$f'(x)=\frac{f(x+h)-f(x)}{h}+\epsilon$$ 
Note that, in this case, $\epsilon$ doesn't have to be positive. 
Multiplying by $h$ gives us $hf'(x)=f(x+h)-f(x)+\epsilon h$ and subtracting $\epsilon h$ from both sides yields $$f(x+h)-f(x)=hf'(x)-\epsilon h$$
Now, replace $-\epsilon h$ by $+\epsilon h$ and $h$ by $\Delta x$ to get the equivalent definition: $$f(x+\Delta x)=f'(x)\Delta x+\epsilon\Delta x$$ where $\epsilon\to 0$ as $\Delta x\to 0$. Divide through by $\Delta x$ and take the limit to see why $\epsilon$ must go to $0$ as $\Delta x$ goes to $0$.
I hope you can see that there is no intuition behind this besides the fact that we have rewritten the derivative.
We do this because we want to be able to define the derivative of functions on higher dimensional spaces. 
For example, suppose $f:\mathbb R^2\to\mathbb R$ is defined by $f(x,y)=x+y$. Is it not valid to ask how $f$ changes if its inputs are changed? We can't use our original definition because vector division is not defined.
We can say that $f$ is differential if there exists a function $A:\mathbb R^2\to\mathbb R$ and an error term $\epsilon(\vec{h})$ such that $$f(\vec{x} +\vec{h})=A\vec{h}+\epsilon(\vec{h})$$ 
where $\lim_{|\vec{h}|\to 0}\epsilon=0$
