Complete JavaScript rewrite

- Added starting point for user settings