My Notes and Exercises for UC Berkley CS61A: Structure and Interpretation of Computer Programs, Spring 2013