Make Image::from_data() return an Option that fails if data is too long/short
Created by: ca1ek
This prevents from someone not giving enough data, then crashing at runtime because non existent data was accessed.
In the future possibly we could make this crash in debug mode, but keep working in release.