make location observer and restructure the files