This is in JavaScript now

JavaScript rewrite of the original script, because we hate ourselves and decided to write this in node.
No ldap because we'd probably need some node package for it and I'm not that deep.
`read` doest pretend to parse anything into meaningful types, it just parses it into JSON. Duplicate handling is something that's addressed upstream.