add browser support via umd pattern