Assign correct source unit Dir and handle subdir gems

Previously, the source unit Dir field was getting set to the gemspec
file. Now it is set to the dir containing the gemspec file.

Also, gems in subdirectories (e.g., railsties/railties.gemspec) were
producing source units whose files were relative to the gemspec dir,
not the repo dir. They should be relative to the repo dir. This adds a
new test case (ruby-subdir-gem) and fixes the behavior.

Signed-off-by: Quinn Slack <qslack@qslack.com>