items can now get their own location and contents and not rely on those stupid classes