Add flag indicating whether handle was acquired from a task

To keep the get_handle() method const the flag has to be marked mutable
but should get_handle() be const (e.g. std::packaged_task::get_future()
is not).
Replace handle_acquired with shared state use_count()
Remove task source file

Implementation is in the header file.
Throw an exception when task is executed more than once

Task should be executed only once. Any consecutive executions will
result in task_error beign thrown.
Adjust base::message_loop to changes in task's API

Since task is now a template but same message_loop must be able to run
tasks with different result type it was necessary to erase the result
type from the task.

Refers #32
Adjust base::thread to changes in task's API

Refers #32
Merge pull request #34 from localghost/devel

base::task new API