Initial commit of Location module - to be shared between several branches.
This is its starting point.