diff --git a/Cargo.toml b/Cargo.toml
index a6355c67e9066ab03bf55a4d766c8a0d6aa51d2b..2e3c62bcaecaf15213e7dd38825d1d9e2fc95dfe 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "micro_games_macros"
-version = "0.6.0"
+version = "0.7.0"
 edition = "2021"
 authors = ["Louis Capitanchik <contact@louiscap.co>"]
 description = "Utility macros to make it easier to build complex systems with Bevy"
@@ -21,10 +21,10 @@ test-case = "3.3.1"
 serde = { version = "1.0", features = ["derive"] }
 serde_json = "1.0"
 anyhow = "1.0"
-micro_bevy_world_utils = "0.5"
+micro_bevy_world_utils = "0.6"
 
 [dev-dependencies.bevy]
-version = "0.14"
+version = "0.15"
 default-features = false
 features = [
     "bevy_asset",
diff --git a/README.md b/README.md
index c01ecb81c39da67f8d08c22222ec20664f34cbec..738428365da4b74186b857571f7802d70c7727f9 100644
--- a/README.md
+++ b/README.md
@@ -75,20 +75,6 @@ fn example() {
 }
 ```
 
-### Kayak Widget
-
-A simple derive for Kayak UI's "Widget" trait
-
-```rust
-use micro_game_macros::Widget;
-
-#[derive(Widget)]
-struct MyComponent;
-
-// ... Other Kayak Setup ...
-
-```
-
 ### Tag Finder
 
 Create a system param for checking whether an entity has one of a specified number of tags. The tag finder will also
@@ -104,4 +90,10 @@ pub struct TagFinder {
     #[sparse]
     hover: Hover,
 }
+```
+
+### Event System
+
+```rust
+
 ```
\ No newline at end of file
diff --git a/src/json_loader/components.rs b/src/json_loader/components.rs
index 59b74b2043635ecb15805c3591c67434a2ba98e9..8e2784867a7c6b975e411d435b319eaa74a36706 100644
--- a/src/json_loader/components.rs
+++ b/src/json_loader/components.rs
@@ -122,11 +122,11 @@ pub fn define_loader(
 			type Settings = ();
 			type Error = #error_name;
 
-			async fn load<'a>(
-				&'a self,
-				mut reader: &'a mut #BevyAssetReader<'_>,
-				_settings: &'a Self::Settings,
-				load_context: &'a mut #BevyLoadContext<'_>,
+			async fn load(
+				&self,
+				mut reader: &mut dyn #BevyAssetReader,
+				_settings: &Self::Settings,
+				load_context: &mut #BevyLoadContext<'_>,
 			) -> #FQResult<Self::Asset, Self::Error> {
 				let mut bytes = #FQVec::new();
 				#BevyAsyncRead::read_to_end(&mut reader, &mut bytes).await?;