Check empty source when adding claim

fix the rspec cases and add checking for the source when adding claim
I'm confused.  the +Source card should always be a Pointer, right?

I still think we should eliminate the trait fetching and then just do this:

```
if source_card || new_card?
   check_source source_card
end
```

That way, if someone submits subcard data ("if source_card"), then we always check to make sure it's valid.  And if someone is creating a new card ("|| new_card?"), then we make sure it can't get created without a source.

As it stands, the code leaves the possibility that this could happen:

Person 1 goes directly to /my_claim+source and delete it.  no error.  (this is a separate problem that we need to fix later)

Person 2 goes to rename "my claim" to "your claim", and gets a weird error about the +source card.

This is really my fault, not yours, that it's so complex, but for now I think we should *only* focus on the cases where there is an explicit subcard.  The other cases are much more involved.

We will definitely solve this in a deeper way (see http://wagn.org/implement_required_fields_on_forms), but for now let's just get rid of that trait line (96).  The logic in 103 also seems a bit off, so I'd really rather we just simplify for now.