They work! And build!

Now to clean up boundaries, write tests, add quality...
Flags, printing fixes.

Now it runs like the old program, except with a longer compile time, and
two executables rather than one.
Massive restucturing of modules.

oauth and logging are their own packages, "ebooks" just moved to server,
"defs" handles only struct definitions for rpc. Tests probably borken,
but passes smell test.
Tests now pass, as well as Makefile cleanup.

We now clean the extraneous DB file the storage_test causes, as well as
add removal of superfluous whitespace using the sed command.
First-pass implementation of bot creation.

This is as bare as it gets, just something so I can put it on a linode and
get it producing. Hard-codes 12hour tweets, uses channels and goroutines
so I have NO IDEA whether this works for anything. But we'll see... if I'm
understanding how these work correctly, it's actually pretty hip.
It works! Fixed server scheduling bugs, incomplete.

There's still a ton to implement (like the actual scheduling bits, currently
just returning a constant), but it can sit on a server somewhere and tweet
happily ^_^
Fix a character limit bug.

We were producing tweets that didn't fit under character limit because we
weren't counting the starting prefix. Bug introduced when I flagged-out
representations, which are also buggy as hell.
Bugfix for unexcaping of HTML encoding on tweets.

So apparently "_, elem := range elems" means 'elem' is a copy of the element
in 'elems', not a reference. This is why too many of our tweets were ugly :-/
Forgot to update the todo document...
Implemented more bot-related server commands.

Now, onto the real task of scheduling.
First impl of key separation.

Since this is running a real app with my application keys, this
decouples them from the source so I can release it and not worry about
abuse. Still requires further testing, then I have to revoke my old
keys...
Fixed default duration to 11hours.

This is just what I want right now.
Added license, better README. make fmt.

I spot a bug but will try to fix it tonight. Ship it!
Updated README with examples.
More README editing. Misspellings, bad formatting.
No longer look for my (MY! PABLO'S!) tokens

It needs a default user for all requests, which was mine for a while.
Now it uses whatever the user supplies the app.
Fix Sending to users after first @ reply.

So previously, the tweet

"@SrPablo @Aldaviva so come at me bro!"

would map to

"@Aldaviva so come at me bro!"

We'd strip replies, but not all of them. This change fixes this, because
people are getting tweeted at when they probably shouldn't be.
Use Twitter 1.1 API for User Timelines

Twitter up and killed their 1.0 API, which I was pointing my
user_timeline call to. Apparently, the authentication was wrong, so I
had to patch it up to fetch again.

Need to make sure posting is okay (why wouldn't it be?) then I can
upload it home.
Fixed posting tweets.

Printing HTTP requests to stdout makes them unsuitable for sending in
the Go libraries. Cool side effects, bro.
setup on local devbox