Npm install particle-cli not working on mac os x el capitan

Hey I'm running Sierra 10.12.6
I've spent the last couple of days trying to figure out issues with serialport mismatch and trying various ways to get the particle CLI up and running, to no avail.
Here is a compiled list of references that I seemed to circle back to:

https://community.particle.io/t/particle-cli-issues-error-loading-module-serialport/32239/6
https://docs.npmjs.com/getting-started/fixing-npm-permissions

I am having a similar issue as a lot of people and getting hung up on weird dependency/permission/PATH/mismatch issues. So to retry everything again I decided to install po-util in hopes that it would build everything as needed and I could finally finish up some projects. Here are my steps and the resulting error. It seems like I'm really close to fixing this.

  1. I cleaned node and npm from my computer
  2. I installed po-util via bash <(curl -sL https://master.po-util.com/install)

After installing I got this output (this is the same output I just reran it because I didn't grab the error the first time)
Davids-MacBook-Pro:~ daviddefilippis$ po install

Installing Particle firmware from Github...
fatal: destination path 'firmware' already exists and is not an empty directory.

Installing RedBear Duo firmware from Github...
fatal: destination path 'firmware' already exists and is not an empty directory.

Installing ARM toolchain...
Already up-to-date.
Warning: nrobinson2000/po/gcc-arm-none-eabi-53 20160330 is already installed
Warning: dfu-util 0.9 is already installed

Node.js version v6.9.1 is already installed.

Installing particle-cli...
Password:
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
/usr/local/bin/node-pre-gyp -> /usr/local/lib/node_modules/node-pre-gyp/bin/node-pre-gyp
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
/usr/local/bin/particle -> /usr/local/lib/node_modules/particle-cli/bin/particle.js
/usr/local/bin/serialport-list -> /usr/local/lib/node_modules/serialport/bin/list.js
/usr/local/bin/serialport-term -> /usr/local/lib/node_modules/serialport/bin/terminal.js
/usr/local/bin/serialport-repl -> /usr/local/lib/node_modules/serialport/bin/repl.js

serialport@5.0.0 install /usr/local/lib/node_modules/serialport
node-pre-gyp install --fallback-to-build

[serialport] Success: "/usr/local/lib/node_modules/serialport/build/Release/serialport.node" is installed via remote

  • node-pre-gyp@0.6.38

  • npm@5.4.2

  • particle-cli@1.24.1

  • serialport@5.0.0
    updated 4 packages in 26.882s

    Thank you for installing po-util. Be sure to check out https://po-util.com
    if you have any questions, suggestions, comments, or problems. You can use
    the message button in the bottom right corner of the site to send me a
    message. If you need to update po-util just run "po update" to download
    the latest versions of po-util, Particle Firmware and particle-cli, or run
    "po install" to update all dependencies.

Davids-MacBook-Pro:~ daviddefilippis$ particle cloud login
module.js:471
throw err;
^

Error: Cannot find module 'xtend'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (/usr/local/lib/node_modules/particle-cli/settings.js:31:14)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
Davids-MacBook-Pro:~ daviddefilippis$

New error but can you
a) point me in the right direction to chase this error down
b) help point me to a resource that will wipe node and po-util and all dependencies so that I can start fresh

thanks