Updated to use Aether plus some more work