fix(select): add basic track by and select as support

Instead of throwing an error when using "track by" and "select as" expressions,
ngOptions will assume that the track by expression is valid, and will use it to
compare values.
Add comment before "Now reload the array". And actually replace the whole array