Add lots more browser support, node support and documentation