Add tests for update_language_packs & add mock library for help in testing

Does two things:
1. Add the `mock` library. This allows us to fake methods and objects, allowing us to dictate what we want to return from them.
2. Uses this mock library to add tests for `update_language_packs`. It's not comprehensive yet, due to some of the functions being humongous and needing some refactoring. Getting this in anyway since it's a nice demo of how we want to test stuff in the future, and avoid using browser tests for almost all of our tests.