#1946, 1947 - Make altered names/slugs more user-friendly, make conflict-finding code check filenames with no extensions

- Reduced from four places that alter names/slugs to two (one to populate empty slugs, one to handle conflicting names/slugs).
- For empty slugs, fill with generic human-readable name (e.g. "photo") instead of random value.
- For conflicting names/slugs, add suffix that's sequential (e.g. "-001") instead of random. This is handled by the function Item_Model::_randomize_name_or_slug_on_conflict, which should be renamed to Item_Model::_change_name_or_slug_on_conflict.
- Made conflict-finding code check filenames with no extensions.