Move demo into its own app