New instruction format

As per discussion with @shykes and @tianon 


	8:11 PM shykes 
    There's this one thread about the syntax
	I kind of agree with the people saying it might be confusing
	I wanted to discuss that with you
	If we do decide we want to change it, it's better to change it early
	since it affects file formats, which stick around and need to be supported for a long time
	how do you like the unique syntax "<docker_tag>: <url>[@<version>]"
	where <version> could be a git branch, tag or commit
	8:13 PM joffrey
	what if a tag and a branch share the same name in one repo ?
	8:15 PM shykes
	mmm
	git has the same problem
	when you 'checkout <tag_or_branch>'
	you may get a warning about ambiguous refname
	and then it chooses one
	I think the tag gets precedence
	might make sense to mimic that
	8:16 PM joffrey
	okay
	8:16 PM shykes
	*or* we could just never use branches
	since their use is discouraged anyway
	and using them would probably not yield the intended result for upstream contributors
	8:17 PM joffrey
	and then if a tag replicates a commit ID, the commit ID would take precedence?
	8:17 PM shykes
	yeah
	which is what git does also
	(just checked)
	what do you think?
	8:18 PM tianon 
    sounding tasty to me
	8:19 PM joffrey
	sure, works for me. while we're at it, let's make the @<version> mandatory