added geolocation and validation based on ip --Added SpoofIp to get better geoloc in development, this may cause ip address related issues in development