Made implementation for `HasSourceRectangle` and `CanSourceRectangle` more generic

Closes https://github.com/PistonDevelopers/rust-graphics/issues/569
Merge pull request #570 from bvssvni/master

Made implementation for `HasSourceRectangle` and `CanSourceRectangle` mo...