Allow to pass an array index to removeAttr in Observe and Observe.List

With this you can pass arrays into removeAttr method
```javascript
o = new can.Observe({array:[{nested: "yes we can!"}]})
o.bind('change', fuction(ev, prop, type, newVal, oldVal) {console.log(arguments)})
o.removeAttr('array.0.nested') // -> "yes we can!"
// Event trigger arguments [{event object}, "array.0.nested", "remove", undefined, "yes we can!"]
o.attr('array.0.nested') // -> undefined
```

Fiddle with current state where this will throw an error http://jsfiddle.net/2a8TW/