Move profile creation into lib/profile (fix #187)

This mostly reverts https://github.com/mozilla/jpm/commit/e0eb615b90799c43e49d12186a7548aa33d33629 and moves functionality of using an existing profile into lib/profile. The result is much cleaner in my opinion, as task.js now doesn't have to bother with profile creation logic.

My main intention is to fix the failing tests mentioned in #187 that are bugging me.