Following this discussion it makes sense to do the following changes:
size should more or less disappear in favor of just the array capacity 
equal, etc. would ignore size (if it remains for backward compat reasons) 
- most functions resize implicitly if needed