For my 1c
I would use the uniqueidentifier / New_id() if I was planning for replication as it does a very good job of allowing multipe inserts from multiple locations, but it is BIG (16 bytes) and takes up space.
If i wasn't planning on using replication (and it might be silly the way things are going now), then I would use the bigint. I also tend to start my identity property at the "small"end of any numric range. Not 0.
I.E. for smallint the first number would be -32000 (approx) and int -1,200,000,000 and bigint(-9,223,372,036,854,775,808)
That way I get to take full advantage of the range avaiable without waiting for it to run out(assuming that that is a possibility)
One thing the web has taught us is that we can collect more data than we ever expected
Rob