Introduz novos modelos para eventos

O modelo "Evento" antes tinha uma série de campos que não são mais
interessantes. Os campos nome, descrição, local foram separados do
evento principal. Agora, um evento nada mais é do que um "slot" de tempo
em que algo pode acontecer, como uma palestra ou um minicurso.

Caso seja um evento do tipo palestra ou minicurso, a entrada de dados
será feita em outro menu. No caso de eventos do cultural ou outros, a
entrada dos dados do evento será feita clicando no evento na página de
administração e em seguida entrando na seção "Adicionar dados extras"

A tabela de empresas ganhou o campo "URL"
Usa um muitos-pra-muitos na relação minicurso-evento
adiciona palestras
Permite deletar palestras
Permite alteração dos minicursos
permite alteração de palestrante e info do palestrante

os arquivos courses.py e lectures.py estão quase iguais, há pouquíssimas
diferenças entre eles.

pra cada uma das páginas, tem um formulário pro palestrante, um pras
informações de contato dele e outro pra entidade de interesse (palestra,
minicurso). As três tem prefixos diferentes pra funcionarem juntas
dentro de um único <form>.

Na hora de salvar os itens, primeiro eu garanto que todos os forms são
válidos. Depois salvo os dados do palestrante porque ele é usando como
chave estrangeira nos outros dois modelos. Em seguida, cada uma das
informações de contato recebe o palestrante como chave estrangeira
porque ele não estava disponível durante a criação do
ContactInformationFormset.

No caso dos minicursos, como eu uso commit=False, preciso também salvar
as relações many-to-many usando course_form.save_m2m()
Merge branch 'modelos-db'

Conflicts:
	website/models.py