- battery: when state or icon change, update with _p9k_set_prompt. make sure icons can be sent with
  `typset -p` in zsh 5.1.
- ram: reduce precision to 2 digits. check if it makes sense for all segments that use the same
  function.
- to avoid resetting prompt too often (e.g., when battery remaining time changes by 1 minute), can
  do the following: send the current state from master to worker; worker sends new state if it's
  different but it only triggers prompt reset if it's sufficiently different. this requires
  disabling implicit reset on every eval in _p9k_worker_receive.
- implement fake gitstatus api on top of vcs_info (or plain git?) + worker and use it if there is no
  gitstatus.