ArrayClass methods, array/hash elements as lvalues etc

@stevan: Quite a few changes. Please review.