Garden Management Take 2

It's the same as the previous PR only now with working tests, and more finished functionality.

# What's New
* started adding a user's garden page
![screenshot 2014-11-06 14 25 36](https://cloud.githubusercontent.com/assets/485583/4932212/48b4fb94-6586-11e4-8804-9bb06637244c.png)
* this goes alongside all the relevant angular services, garden controllers, garden crop controllers, and gardencrop mutations.
* guides can be added to gardens:
![screenshot 2014-11-06 14 26 12](https://cloud.githubusercontent.com/assets/485583/4932213/48bfa5f8-6586-11e4-8f45-684a81940e58.png)

# What's missing:
* Adding new gardens!
* Dynamic handling of the garden options. @channel have thoughts on this (will that work?)
* I'm probably missing some things.
* Garden images

# What's next
* Plan an OpenFarm meeting to define an openfarm roadmap.
Ah, I see what's going on here. I think we can file this one as NA.

This method has 6 `if` statements, which would usually cause someone to vomit, but I think that it's actually not hard to follow/test/maintain. Let's ignore this bark.