Address Michael's review comments:
  - fix to fire pull event when we pull
  - externalize UI strings
  - extract constants for strings (typically used in JSON)