Building a Permissionless Perpetual Exchange