added dependencies and code to support hot reload