Modify BelongsToMany::attach() to return boolean results

Rather than resort to throwing an exception and requiring ugly application-level code to deal with it, we return the result of the attach in all cases.

Note that this also removes the `touchIfTouching()` call on failed inserts, which may be troublesome if the user is manually editing database records.