Refactor align-items and align-self (#fails 377 -> 257)

Whilst dealing with some alignment issues I realised we're double up on some code: align-items does primary alignment then align-self does very similar alignment on an item by item basis. I suggest we use align-self as the main alignment code body and align-items just sets individual align-self properties if their undefined or 'auto'.

This involves a pretty big chunk of code being removed for align-items, so I thought I'd get your (@doctyper) opinion first, rather than pulling it straight into the main code base. The upshot is that the failed count goes down from about 380 to 260.