Added ComponentLocation.java, changes to the other 3 files