Move properties into magic object, add some docs