Why would one eigenvalue correspond to multiple eigenvectors? Given the matrix $A = \begin{bmatrix} 0 & 1 \\ -1 & -2 \end{bmatrix}$
This guy has eigenvalues $\lambda = -1$ with algebraic multiplicity 2.
Why is it that the eigenvector corresponding to this eigenvalue (as returned by computing software such as matlab) is $[-1, 1]$, and $[1, -1]$ instead of just one eigenvector?
Is this by convention? Is it for efficiency? Is there some mathematical inaccuracy if we just use one eigenvector?
 A: Note: Those aren't the eigenvectors, nor is that the eigenvalue. The correct eigenvalue is $1$, the correct eigenvector (here there really should only be one) is $\begin{bmatrix}1\\1\end{bmatrix}$.
Matrices can have more than one eigenvector sharing the same eigenvalue. The converse statement, that an eigenvector can have more than one eigenvalue, is not true, which you can see from the definition of an eigenvector. 
However, there's nothing in the definition that stops us having multiple eigenvectors with the same eigenvalue. For example, the matrix $\begin{bmatrix}1&0\\0&1\end{bmatrix}$ has two distinct eigenvectors, $[1, 0]$ and $[0, 1]$, each with an eigenvalue of $1$. (In fact, every possible vector is an eigenvector, with eigenvalue $1$.)
Normally, if there is only one eigenvector corresponding to an eigenvalue of multiplicity greater than one, mathematically we would just say there is only one eigenvector. However, it seems like your checking program has some quirks which make it want to say there are two, so it just gave you a scalar multiple of the first vector. 
A: Mathematica does not behave this way, but apparently Matlab does. Because algebraic multiplicity is 2, it wants to output two eigenvectors; but there's only one linearly independent one, so it puts a scalar multiple as the second. What does it give you if you try the matrix $$\begin{bmatrix} 0&4&-1\\-1&4&-1\\-2&5&-1\end{bmatrix}?$$
A: I assume that you are numerically evaluating the eigenvalues/vectors in Matlab?:
A = [0 1;-1 -2];
[V,D] = eig(A)

If you evaluate symbolically (with sym/eig), as you did by hand, then you'll get the single (un-normalized) eigenvector you expected:
A = [0 1;-1 -2];
[V,D] = eig(sym(A))

returns:
V =
 
 1
 1
 
 
D =
 
[ 1, 0]
[ 0, 1]

Your matrix is defective. It is not diagonalizable. The numeric eig function's behavior is explained here in the documentation. Essentially, a result is returned such that A*V - V*D is as close to zero as possible.
