[USER ATTRIBUTION] initial commit

A working version of user attribution feature for Concourse 0.5

#### Dependencies:
* Upgrade framework

#### TODO:
* More tests

#### Open Questions:
* What uid the exisitng data would have when being upgraded?
* The **verify** methods currently take a uid param for creating **write** to compare, but uid is not used in either write#**equals** or write#**matches** when comparing **writes**. To avoid any confusions temporarily, these methods should be documented. Perhaps we would need another methods in the future to take into account **uid**?