add repository protocol and Local repository type
get codeq/core working with new repository protocol

Bare minimum to get codeq/core working with the repository protocol.
The code can still be cleaned up considerably.
refactor: add import-commits and repository-tx-data functions
import branches and tags into codeq database
formatting.  thanks vim-clojure-static
split out Repository types from protocol

move Local repository type into its own file in anticipation of there
being multiple repo types (github).

Add a bunch of doc strings to indicate what functions actually do.

Fix some bugs related to importing tags and branches.  Now using fancy
set functions like join and project.  Not sure if its understandable,
but it seems to work.
preliminary support for github importing

* Update to clojure 1.5 RC1
* Overhaul how commits are retrieved from github.  Now individual
  commits are 'memoized' in an atom containing a map of
  sha -> commit map.  The other way of memoizing tentacles calls
  was wrong.
* Add distinction between lightweight and annotated tags, add tests
* Add commit-directory, which will hopefully be the basis for
  splitting out some of the commit-tx-data logic into seperate
  functions
fix commit-directory function
Import more repo info.  Better CLI. Github toposort.
Add tests for info function.
Import refs per repository.

Fixes issue where refs with the same type and label but different
repositories would not be imported.
Import default branch into codeq when available
Use repo URI that comes back from github

This kind of solves some captitalization issues. For instance, Github
will respond to requests to github.com/datomic/codeq, even though the
real URI is github.com/Datomic/codeq.  The URI info given back will
always be with the prefered capitalization, however.  This change uses
the info that comes back, so that we won't reimport repositories because
of different capitalization.  The issue still exists for local repos if
they have a different capitalization in the remote uri.
Rename default branch attribute to follow Datomic style
Merge branch 'master' of git://github.com/Datomic/codeq

Conflicts:
	project.clj
	src/datomic/codeq/core.clj