edited crate item interaction behavior

It wasn't really checking if the item it was interacting with was a
crate, null, or unstackable before trying to insert or eject.