WIP style guide

First pass at a style guide. Most of this *should* be common sense. Yet, as everything listed here frequently comes up in code reviews, there is arguably a need to make common sense a little more common.

I expect there will be some debate over what is a juju convention/style vs someone's opinion. As such, I provide this doc only as a starting point and I am not attached to any given convention in there. The benefits of agreeing on and clarifying our conventions upfront are: easier 'on-ramping' for newbies and quicker reviews.

I will start a juju-dev thread for this PR, please use it for debating what should/shouldn't be in the style guide (or even if you disagree that we need a guide).
For package level functions, the function name combined with the package name need to indicate what the function does... for example errors.New()   ... New() by itself is a terrible function name, but because you always have to call it with the package name, it's fine.