This site has a list of resources from around the web to progressively pick up AngularJS, going into details of each Angular concept in the right sequence. Check it out here
$scope is an important thing in AngularJS. That's what makes data binding possible. Scope makes use of prototypical inheritence when it's passed around, and this is a source for many subtle bugs because prototype chain in JS is somewhat confusing. Angular wiki has a good writeup about the prototype chain with diagrams to easily understand this concept. Check it out here.