Yeah, I would say all of the above could have played into factor. Your best bet is cleaning up the sub URL (might not be the main cause) the reciprocal links are really easy to pick up on so get rid of those and depending on how the link was bought, it there is anything that makes it obvious then drop it.
If you have a new domain without much link history throwing a bagillion gray/black tactics at it will generally put it on googles radar for filtering. I see that we occasional new sites that we put a bit to much promotion into. Focus on content for the first bit, get some national brand links, then if you want you can get a bit more aggressive. Just stay away from things that are easily identifiable and focus on guest posting, etc for good links.