handle asset gems in a sane manner

This allows us to conditionally require asset gems instead of
hardcoding them into the gemspec.