I am having trouble understanding how branch cuts work. For example, the function $f(z)= \sqrt{z}$ has a branch cut where you reject the negative real axis. But how do you define the output so that the function is 1-1 and onto? For example what is $f(1 + i)$? And $f(1-i)$?
Also does the function containing the branch cut have to be analytic?
It's easiest to understand the principal square root if you write the complex numbers in polar coordinates, that is, $r(\cos\theta+i\sin\theta)$ for some real $r\ge 0$ and real $\theta$ rather than $a+ib$ for real $a$ and $b$.
To find (the principal value of) $\sqrt z$, write $z=r(\cos\theta+i\sin\theta)$ with $\theta$ chosen in $(-\pi,\pi]$. Then $$\sqrt z = \sqrt r ( \cos\frac\theta 2 + i\sin\frac\theta 2 )$$
Thus, since $1+i = \sqrt 2(\cos\frac\pi4 + i\sin\frac\pi4)$ we get $\sqrt{1+i} = \sqrt[4]2(\cos\frac\pi8 + i\sin\frac\pi8)$ -- whose value in ordinary coordinates I don't care to create, but we can read immediately off the expression that it lies 22½° above the positive real axis and about 1.19 from the origin.
Note that the function thus defined happens to be 1-1 (though this is more by accident than by design), but it is not onto. Its value never lies to the left of the imaginary axis.
Finally: One usually speaks of branch cuts only when we're talking about analytic functions. There's nothing that formally prevents us from defining a non-analytic function that happens to have a branch cut, but this is generally not considered an especially interesting situation -- for non-analytic functions it is usually more fruitful to consider them as functions on $\mathbb R^2$ instead of on $\mathbb C$.