Graded Homework 4

**Grade: 4.5/5**

Great work, @hpelletier! I especially enjoyed the last couple functions you wrote. I have a few comments for you:
- Generally avoid using Python's keywords (type names like `int` or `list`, `in`, `for`, etc.) as variable names.
- In recursive functions, you want to check for base cases first. If Python matches a base case, it doesn't need to look through other loops to see if it matches those as well.
- Your implementation of `remap_interval` is AWESOME. You changed the function from what Paul gave you and updated the docstring to reflect the changes and let other users know what the function does. Great work!
- I liked how you constantly casted `float` to avoid any issues that arises from casting `int` to remapped values, but sometimes you don't even need to cast everything. For example, you could have simply run this to avoid casting everything to float: `remap_interval(j,0.,349,-1,1)`. The only difference is the `.` after the `0` :-)

Once again, awesome work! :thumbsup: 

Once you've read the comments (both on the PR and under files changed), make a comment to the pull request or send me/Diana an email, letting us know that you've checked them out. Afterwards, close the PR (and optionally delete the graded branch)

#### REMEMBER NOT TO MERGE THESE PRs!