Non-Linear Least-Squares Reverse-Time Migration